C编程三维表的第一个值

时间:2014-04-08 20:44:35

标签: c arrays

像这样的简单代码,

int arr[3][3] = {1, 2, 3, 4};
printf("%d\n", *(arr));

我认为输出将是table的第一个值,1,但是gcc会返回一个垃圾值。

有人可以解释多维表和简单表之间的区别吗?

1 个答案:

答案 0 :(得分:2)

你得到了数组第一行的地址,它也是整个数组的第一个元素的地址。

*(arr)等于arr[0]

因此,您正在尝试打印地址,并应使用%p printf说明符。