为什么数组中的右值和左值是相同的?
请参阅代码:为什么&a
和a
具有相同的值?
CODE:
int main()
{
int a[4];
*a = 3;
printf("&array: %p array: %p array[0]: %d", &a, a, *a);
return 0;
}
输出:
& array:000000000023FE50 array:000000000023FE50 array [0]:3
答案 0 :(得分:1)
此处,&a
和a
提供相同的输出,因为在C
中,数组名行为(或更好,得到评估)作为地址数组的第一个元素。