指针与数组的

指针与数组

小知识点

1 数组名可以表示整个数组的情况.
1.0 sizeof(数组名) sizeof(arr) arr必须单独出现,才可以代表整个数组,sizeof(arr+n)中的arr 代表首元素的地址
2.0 &(数组名) &(arr) ,中的arr 代表整个数组。
除了上面的两种情况,arr 都代表首元素的地址

2 对指针或者地址+1,加的是指针所指向的类型的大小
int *p=&a;
p++;
加的是 4个字节

3 数组传参退化成指针,传的的首元素的地址
void compare( arr [10] );
void compare( arr [ ] );
void compare( *arr );

4 指针数组:存放地址的数组. int *arr [10] : 存放了10个int 型指针的数组。
数组指针:数组的地址, 能够指向数组的指针 int (*arr)[10] : 数组arr[10] 的地址 。

5 二维数组传参:函数形参的设计只能省略第一个[ ] 的数字
对于一个二维数组,可以不知道有多少行,但一定要知道一行有多少个元素。

猜你喜欢

转载自blog.csdn.net/qq_41577616/article/details/84340438