定义一个数组 int n=10,b[n]; 这样写为什么不对?

如题所述

int n=10,b[n];
b[n] 这样写 不对。 因为编译时 要给 b[n] 分配存储单元,而此时 的 n 等于 几,尚不知道。 前面的 n 刚分配了单元,但初始化 尚未执行, n 等于 几,尚不知道 。

若写:
#define n 10
int b[n];
就可以了。因为 预编译时,编译器会做字符替代,把 int b[n]; 替代 成 int b[10];
温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-12-03
int b[n];

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网