int a[2][3]={{1},{2},{3}};和int a[ ][3]={{1},{2},{3

int a[2][3]={{1},{2},{3}};和int a[ ][3]={{1},{2},{3}};哪个正确的啊?还有一个哪里有错啊!谢谢!

int a[2][3]={{1},{2},{3}}; // 这是错误的,{1},{2},{3}表明,该数组有3行,但声明的是2行。VC 6.0中的错误信息是: error C2078: too many initializers

int b[][3]={{1},{2},{3}}; // 这是正确的,因为第一维未声明,根据初始化表编译程序可以计算出第一维是3,等同于int b[3][3]={{1,0,0},{2,0,0},{3,0,0}};
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-07-03
int a[ ][3]={{1},{2},{3}}; 这个是正确的,编译器会根据初始化列表计算出第一维的长度

int a[2][3]={{1},{2},{3}};这个是错误的,初始化列表里的3组括号说明这个数组是3行(第一维是3),超过定义的长度了
第2个回答  2012-07-03
第二个是正确的

相关了解……

你可能感兴趣的内容

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