一、优先级关系:
我们在搞清指针函数和函数指针之前,首先需要了解“*”、“[]” 、“()”三者之间优先级的关系。
这里“*”是取值运算符,“[]”是数组下标运算符,“()”是括号运算符。
,*C语言中优先级关系为:() > [ ] > *; ()、[ ] 结合性:自左向右,*为单目运算符。
二、指针函数和函数指针的概念:
1、指针函数:本质上是一个函数,其返回值为一个指针。
声明格式:返回值类型* 函数名(参数列表);
例:int *func();
2、函数指针:本质上是一个指针,这个指针指向一个函数的首地址。
声明格式:函数返回值类型 (*指针名)(函数参数列表);
例 int (*prt)();
三、实际应用:
1、指针函数:一般用于函数返回值为一个指针的场景
运行结果:
2、函数指针:可以用于c语言结构体中指向一个函数:
运行结果:
以上就是本次讨论主要内容,欢迎沟通交流~