作业帮 > 综合 > 作业

int a[ ]={0,1,2,3,4,5,6,7};这种定义对么

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/16 01:27:14
int a[ ]={0,1,2,3,4,5,6,7};这种定义对么
# define N 3 int a[2N+2]; 和 int a[ ]={0,1,2,3,4,5,6,7}; 这两种定义哪个是正确对的?
# define N 3 
int a[2N+2];这个定义是错误的, 因为不是常量表达式,而且2N 是语法和语义的双重错误.你要是# define N 3 
int a[2+N+2];
int a[2*N+2];这个是正确的了,因为数组的维数必须是常量.这点很重要
int a[ ]={0,1,2,3,4,5,6,7};这个是正确的,因为当没有给定数组的维数时,初始化列表中的元素个数决定了数组的维数.上面的代码相当于
int [8] = {0,1,2,3,4,5,6,7};