理解 指针数组 数组指针 函数指针 函数指针数组 指向函数指针数组的指针
1.指针数组
指针数组强调的是数组,并且数组元素是指针类型
例:int *arr[5]//arr是一个数组,数组元素是指针(int*)
2.数组指针
数组指针强调的是指针,并且这个指针指向一个数组,即指针变量存放的是数组地址
例:int (*arr)[5]//arr是一个指针,并且指向一个含有5个整型元素的数组
3.函数指针
函数指针强调指针,并且这个指针指向一个函数,即指针变量保存的是函数的地址
例:void test(char* str);
void (*p)(char*)//p是一个指针,并且指向一个函数,这个函数参数是char*,返回类型是void型
4.函数指针数组
函数指针数组强调数组,数组元素是函数指针
例:void test(char* str);
void (*p[5])(char*)//p是一个数组,有五个元素,每个元素是函数指针,这些指针指向的函数参数是char*,
返回类型是void型
5.指向函数指针数组的指针
指向函数指针数组的指针强调指针,这个指针指向一个函数指针数组,这个数组中的元素是函数指针
例:void test(char* str)
void (*(*pfun)[5])(char*)=&test
//pfun是一个指针,指向一个含有5个元素的数组,数组元素为函数指针,
这个函数参数是char*,返回类型是void型