以下是有效的语法吗?如果是,请解释它的工作原理。
double array[SIZE][SIZE] = {
#include "float_values.txt"
}
答案 0 :(得分:4)
是的,这是有效的C语法。
在C和C ++中,#include
指令非常简单:它们只是将您正在使用的文件的内容复制并粘贴到当前文件中,替换#include
指令。
例如,如果您的“float_values.txt”文件如下所示:
{1.0, 2.0},
{3.0, 4.0}
然后预处理器会将您的代码转换为如下所示:
double array[SIZE][SIZE] = {
{1.0, 2.0},
{3.0, 4.0}
}
但是,您必须确保正确定义SIZE
。
答案 1 :(得分:1)
是的,此代码段有效。
预处理器将找到#include
指令并在给定的搜索路径中搜索名为float_values.txt
的文件。然后将获取该文件的内容,并将#include "float_values.txt"
替换为该文件的内容。
如果生成的代码有效,则完全取决于文件的内容。
为了有效,该文件必须包含用于初始化二维二进制数组的数据,但不得包含超过SIZE
值允许的值。
较少的值是可以的,因为剩余的双精度值将被默认初始化。