二级指针,即为存放一级指针地址的指针,
多级指针以此类推,即存放上一级指针的地址
二维数组,二维数组的数组名为第一行元素的地址,对二维数组,有*(*(arr+i)+j)=arr[i][j],且二维数组是连续存放的
指针数组:存放指针的数组,eg:int *arr[4]
数组指针:存放数组地址的指针,eg:int (*arr)[4]---[]优先级高于*
函数指针:
#include <stdio.h>
int add(int x,int y)
{
return x+y;
}
int main(){
int (*p) (int x,int y)=add;
printf("%d",(*p)(1,2));//不加*也行printf("%d",p(1,2));
}
函数指针数组,eg:int (*p[4])(),即存放函数指针的数组