C语言问题

int a[ ][4]={1,2,3,4,5,6,7,8,9}第一维大小为多少

纸上谈兵你总不会有深刻映像,写一段代码,让程序自己告诉你:
#include <stdio.h>
int a[][4]={1,2,3,4,5,6,7,8,9};
void main()
{
int i,j,k,*p;
k = sizeof(int);
i = sizeof(a);
j = sizeof(a[0]);
printf("sizeof(a):%d sizeof(a[0]):%d sizeof(int):%d\n",i,j,k);
for(i=0;i<sizeof(a)/sizeof(a[0]);i++)
{
for(j=0;j<sizeof(a[0])/sizeof(int);j++) printf("%d ",a[i][j]);
printf("\n");
}
for(p=&a[0][0],i=0; i<sizeof(a)/sizeof(int); i++,p++)printf("%d ",*p);
}
//////////////
sizeof(a):48 sizeof(a[0]):16 sizeof(int):4
1 2 3 4
5 6 7 8
9 0 0 0
1 2 3 4 5 6 7 8 9 0 0 0
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-12-31
实际为 a[3][4]
第三行除第一个元素是 9 其余元素为0追问

那么第三维的大小到底是几呢

追答

你的第三维指的是什么呢?
这是二维数组啊。

相似回答