变量定义int *(*p)(int);和int (*p[3])(int);和int *(*p[3])(int);的含义分别是什么?求大神赐教!

我想请教一下,变量定义int *(*p)(int);和int (*p[3])(int);和int *(*p[3])(int);的含义分别是什么?求大神赐教!
最新回答
可爱的偏执狂

2024-07-03 07:22:01

int *(*p)(int);——p是个指针,指向一个具有1个int型形参的函数,这函数返回一个int型指针。
int (*p[3])(int);——p是具有3个元素的数组,每个元素都是指向具有1个int型形参的函数的指针,这个函数返回1个int型值。
int *(*p[3])(int);——p是具有3个元素的数组,每个元素都是指向具有1个int型形参的函数的指针,这个函数返回1个int型指针。
供参考……
—━╋う哪嫒芣侢秇着╰☆╮

2024-07-03 00:00:28

int *(*p)(int);//p是个函数指针,函数的参数为int型,函数的返回值是int *
int (*p[3])(int)//p[3]是个函数指针,函数的参数为int型,函数的返回值是int
//数值p是个函数指针型数值,每个元素都可以指向一个函数
int *(*p[3])(int)//p[3]是个函数指针,函数的参数为int型,函数的返回值是int *
//数值p是个函数指针型数值,每个元素都可以指向一个函数