
int a[2][3]={{1},{2},{3}};和int a[ ][3]={{1},{2},{3
inta[2][3]={{1},{2},{3}};和inta[][3]={{1},{2},{3}};哪个正确的啊?还有一个哪里有错啊!谢谢!...
int a[2][3]={{1},{2},{3}};和int a[ ][3]={{1},{2},{3}};哪个正确的啊?还有一个哪里有错啊!谢谢!
展开
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}};
int b[][3]={{1},{2},{3}}; // 这是正确的,因为第一维未声明,根据初始化表编译程序可以计算出第一维是3,等同于int b[3][3]={{1,0,0},{2,0,0},{3,0,0}};
展开全部
int a[ ][3]={{1},{2},{3}}; 这个是正确的,编译器会根据初始化列表计算出第一维的长度
int a[2][3]={{1},{2},{3}};这个是错误的,初始化列表里的3组括号说明这个数组是3行(第一维是3),超过定义的长度了
int a[2][3]={{1},{2},{3}};这个是错误的,初始化列表里的3组括号说明这个数组是3行(第一维是3),超过定义的长度了

你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询