总结 几个深入理解指针要点

1. 使用数组指针指向一维数组
int a[3]={1,2,3}; 那么p就是指向这个数组a的指针。
int(*p)[3]=&a; // 这里赋值一定要用取地址符号。也就是取数组a的地址。

2.int(*)[3]是个类型

3.int arr[4][4] = { { 1, 2, 3, 4 }, { 5, 6, 7, 8 }, { 9, 10, 11, 12 } ,1,2,3,4};
    int ret = sizeof(arr) / sizeof(arr[0]);
    printf("%d", ret);   //结果是四,在sizeof中arr是整个数组的地址;
                                                   // arr[0]可能是第一行的地址;

4.二级指针可接受二级指针、一级指针的地址、指针数组、一维数组的地址。

5.一级指针可接受一维数组、指针、&a。
 

猜你喜欢

转载自blog.csdn.net/qq_42381855/article/details/87866056