数组和函数都不是指针,但都能退化成指针:
对数组名解引用,数组退化为低一维数组指针
对函数名解引用,函数退化为自身的指针
对于:
int A[2][3][4];
int f(int a, int b);
进行取地址和解引用操作:
&A | A | *A | **A | ***A |
---|---|---|---|---|
int(*)[2][3][4] | int[2][3][4] | int[3][4] | int[4] | int |
&f | f | *f | **f | ***f |
---|---|---|---|---|
int(*)(int,int) | int(int,int) | int(int,int) | int(int,int) | int(int,int) |