楼主可以通过敲打代码来测试这2种赋值方法是不是有区别
- #include<stdio.h>
- #include<stdlib.h>
- int main()
- {
- //int a[5][3]={80,75,92,61,65,71,59,63,70,85,87,90,76,77,85};
- int a[5][3]={{80,75,92},{61,65,71},{59,63,70},{85,87,90},{76,77,85}};
- for(int i=0;i<5;i++)
- {
- for(int j=0;j<3;j++)
- {
- printf("%d",name[i][j]);
- }
- printf("\n");
- }
-
- system("pause");
- return 0;
- }
复制代码
另外楼主所说的“这样赋值了以后a[0][0]是等于80还是a[0][0]变成了a[8][0” 这个是不会发生的,因为你的二维数组最大只能a[5][0],即便你怎么复制也不可能是a[8][0]的!知道吗?因为你int a[5][3] 的时候已经确定了这个二维数组的大小,所以赋值只能决定这个二维数组中的内容,不能改变这个二维数组的大小的! |