数组指针的细节
arr参与计算的时候,会退化为第一个元素的指针;
特殊情况:
sizeof运算的时候,不会退化,arr还是整体;
&arr获取地址的时候,不会退化,步长:数据类型*数组的长度;
#include "stdio.h"
int main()
{
int arr[] = { 1,2,3,4,5,6,7,8,9,10 };
printf("%d\n", sizeof(arr));
printf("%p\n", arr);
printf("%p\n", &arr);
printf("%p\n", arr + 1);//4个字节
printf("%p\n", &arr + 1);//40个字节
return 0;
}
输出结果:
40
000000F52D7FF5E8
000000F52D7FF5E8
000000F52D7FF5EC
000000F52D7FF610
总结:
1.什么是数组指针
指向数组的指针,就是数组指针
2.指针数组的细节
arr参与计算的时候,会退化为第一个元素的指针
特殊情况:
sizeof运算的时候,不会退化,arr还是整体;
&arr获取地址的时候,不会退化;步长:数据类型*数据长度
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。