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

VC++6.0,是不是由于不支持c99标准导致的?如果是那么什么编译器可以论证?... VC++ 6.0,是不是由于不支持c99标准导致的?如果是那么什么编译器可以论证? 展开
 我来答
sdzhuangbo
2013-08-25 · TA获得超过109个赞
知道答主
回答量:67
采纳率:0%
帮助的人:69.9万
展开全部

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

#define N 100
int a[N];

是可以的。但是,如果有

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

显然是不行的。

zhangqingxian
2013-08-25 · TA获得超过268个赞
知道小有建树答主
回答量:362
采纳率:0%
帮助的人:307万
展开全部
VC6当然支持define了,你把代码和错误提示贴出来
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
佐敷
2013-08-25
知道答主
回答量:22
采纳率:0%
帮助的人:26.3万
展开全部
你确信把define数组的部分注释掉是可以通过的吗?把代码贴出来,看看吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式