对一个数组名取地址&
int a[2] = {1,2,3};
int main()
{
printf("a = %p\n", a);
printf("&a = %p\n", &a);
}
本机(linux)结果输出:
a = 0x5555555
&a =0x5555555
知识点: 通常情况下,数组名是指向数组第一个元素的指针。但是有两种例外情况:
1:sizeof() ----------------------------- 返回的是这个数组所占的字节数
2:&数组名 ------------------------------- 返回的是指向这个数组的指针
相比于 数组名, 数组名是指向第一个元素的指针,而&数组名是指向整个数组的指针,当然可以用元素的类型来进行强制类型转换