【C语言-数组名】 数组名 和 &数组名 的区别

数组名使用的注意事项:

1.arr 和  &arr[0] 等价,表示数组中首元素的地址

2.&arr  表示整个数组的首地址

如图前三行,两者结果上是一样的,也都表示地址,也就是指针,但是指针的跨度不一样

具体解释:

附代码:

#include <stdio.h>
int main()
{
	int arr[3] = {1,2,3};
	//数组名是数组首元素的地址==&数组名[0]
	printf("%p\n", arr);     //0053F7FC
	printf("%p\n", &arr[0]); //0053F7FC
	
    //&数组名:整个数组的首地址
	printf("%p\n", &arr);    //0053F7FC
	
	//数组名和&数组名的区别
	printf("%p\n", arr+1);   //0053F800
	printf("%p\n", &arr+1);  //0053F808
							 
	return 0;
}

猜你喜欢

转载自blog.csdn.net/ggbb_4/article/details/129185642