SHU数据结构

数据结构

如果有人不相信数学是简单的,那是因为他们没有意识到人生有多复杂。
——冯•诺依曼

知识点

编程问题

函数指针Visit

函数指针 的本质是一个指针,该指针的地址指向了一个函数,所以它是指向函数的指针。我们知道,函数的定义是存在于代码段,因此,每个函数在代码段中,也有着自己的入口地址,函数指针就是指向代码段中函数入口地址的指针。

函数指针的声明方法为:

返回值类型 ( * 指针变量名) ([形参列表]);

注1:“返回值类型”说明函数的返回类型,“(指针变量名 )”中的括号不能省,括号改变了运算符的优先级。若省略整体则成为一个函数说明,说明了一个返回的数据类型是指针的函数,后面的“形参列表”表示指针变量指向的函数所带的参数列表。例如:

int func(int x); / 声明一个函数 /

int (f) (int x); / 声明一个函数指针 */

f=func; / 将func函数的首地址赋给指针f /

或者使用下面的方法将函数地址赋给函数指针:

f = &func;

赋值时函数func不带括号,也不带参数,由于func代表函数的首地址,因此经过赋值以后,指针f就指向函数func(x)的代码的首地址。

注2:函数括号中的形参可有可无,视情况而定。

参考资料

(*visit)(TElemType e )函数指针理解


   转载规则


《SHU数据结构》 Henry-Avery 采用 知识共享署名 4.0 国际许可协议 进行许可。
  目录