【摘要】:函数名表示函数的入口地址,指向函数的指针变量有时也称为函数型指针。使用指针间接调用所指向的函数,其一般形式为:注意:当使用指针间接调用函数时,不能写成*p。
当函数被调用执行时,操作系统会为函数分配一个地址,称为函数的入口地址。函数被调用并执行时从入口地址开始读取语句并执行,函数体中的局部变量和函数的参数从入口地址开始被分配内存空间。函数名表示函数的入口地址,指向函数的指针变量有时也称为函数型指针。
定义函数入口地址的指针变量,其一般形式为:
例如:
i nt ( * p) (float ,float) ;
说明:
(1)p就是指针变量,指向函数的指针,用来存放函数的入口地址。
(2)函数的返回值为int类型。
(3)指针变量存放某个函数的入口地址后,就称指针变量指向了该函数,指针变量指向某个函数后,就可以通过间接运算符“*”访问所指向的函数。
使用指针间接调用所指向的函数,其一般形式为:
注意:当使用指针间接调用函数时,不能写成*p(参数列表)。(www.daowen.com)
例9.12 C语言中两个整数的加减乘除。
解题思路:
定义一个指向函数的指针变量pf,被指向函数的返回值为整型,接收两个整型参数a和b,通过该指针变量可以指向不同函数实现调用功能。
编写程序:
创建一个名为“eg9_12.c”的新文件,在编辑窗口中输入下面的程序代码。
运行结果:
程序说明:
本程序定义了指向函数的指针(函数指针)int ( * pf) (int a, int b ),通过赋值语句实现该指针指向函数,并通过函数指针调用函数取得返回值。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。
有关C语言程序设计应用教程的文章