一个c语言数组问题

来源:百度知道 编辑:UC知道 时间:2024/05/30 02:34:29
main()
{
int a[2][2]={1,2,3,4};
printf("%d",a[1]);}
这输出什么,a[1]等于a[0][1]还是等于a[1][0].

1、a[1]是指向a[1][0]的指针,在内存中它的数值是 存放a[1][0]的地址,因而上面那个输出语句输出的应该是存放a[1][0]的地址,而这个地址随各个编译环境的不同而不同(在我的机器中,用visual c++ 2008编译后的输出结果为1245012)
2、因此,如果想输出a[1][0]的话,可以用*a[1]

都不是a[1]是一个地址(指针),无法确定值
a[0][1]和a[1][0]都是一个数2和3

二维数组前面的部分指的是该行的首地址,不表示元素的值!