欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

数组名和&数组名的地址

程序员文章站 2022-04-11 18:54:43
...
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<windows.h>
int main() {
 int arr[10] = {1};
 printf("%p\n", arr);
 printf("%p\n", &arr);
 printf("%p\n", arr + 1);
 printf("%p\n", &arr + 1);
 system("pause");
 return 0;
}

运行结果:
006FFE04
006FFE04
006FFE08
006FFE2C
请按任意键继续. . .

由此可知:
arr:代表数组首元素的地址;数组名的值是数组第一个元素的地址;
&arr:代表整个数组的地址;
arr+1:指向数组中下一个元素的地址;
&arr+1:跳过了整个数组的大小。
所以&arr+1与&arr之间的差值为40(int类型)。