c语言问题求解 定义数组的时候,数组的长度为define定义的宏名,为什么不能编译通过?我用的

2025-02-02 10:03:05
推荐回答(3个)
回答1:

用 #define 定义的宏名未必就是常量,这里只是文字替换而已,定义数组所用的长度必须是“常量表达式”。比如:

#define N 100
int a[N];

是可以的。但是,如果有

#defein P printf()
int a[P];

显然是不行的。

回答2:

VC6当然支持define了,你把代码和错误提示贴出来

回答3:

你确信把define数组的部分注释掉是可以通过的吗?把代码贴出来,看看吧