C语言。数组的声明,其大小由宏#define 给出

标签 c arrays macros declaration c-preprocessor

我想知道为什么当我尝试使用 #define 声明数组时我从编译器中得到错误,而使用文字而不是大小允许我这样做。

some_name.h:

#define size 10;

int* waitingBench[size];

最佳答案

您所拥有的将被预处理为:

int* waitingBench[10;];
//                  ^ notice this guy!

#define 中删除分号。

(而且 size#define 来说是一个非常糟糕的标识符。)

关于C语言。数组的声明,其大小由宏#define 给出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12872342/

相关文章:

macros - 流时间 : arity mismatch Error hits in Racket

c++ - 什么会使 C++ 预处理器宏成为公认的开发工具?

c - 请告诉我我的错误

c - 变量之间的百分比

javascript - 在 JavaScript 中,给定一个输入字符串,创建一个函数,该函数返回一个包含 n 个二维数组的数组

arrays - excel/VBA如何将数组的可变长度分配给整数变量

c预处理器将多个参数作为一个参数传递

python - 如何检查 PyObject* 是否指向 numpy.uint8 类型

c - 如果 exec() 失败怎么办?

c++ - Cin 用于字符数组