假定一个指针指向一个int变量,它保存着这个int变量在内存中存储的地址,同样,函数也有地址,这是因为函数的机器语言实现
是由载入到内存的代码组成,指向函数的指针中保存着函数代码起始处的地址
void ToUpper(char *) //函数原型
void (*pf) (char *) //函数指针
void *ph (char *); //返回指针的函数(指针函数)
声明一个指向特定函数类型的指针,首先声明一个该类型的函数,然后用(*pf)形式的表达式代替函数名称,pf就成为可指向那种
类型的函数的指针了;有了函数指针之后,可以把适当类型的函数的地址赋给它,函数名可以用来表示函数的地址,如:
pf = ToUpper;
指针pf可以指向任何一个接受一个char *参数并且返回类型为void的函数
函数指针最常见的用法之一是作为函数的参数,函数指针代表着一类函数,如:
char *ch = "test function pointer";
void show(void (*pf)(char *), char *str);
show(ToUpper, ch); //调用show,将ToUpper函数作为参数
void show(void (*pf)(char *), char *str){
(*fp)(str); //执行函数指针,并将str作为参数传入,或者fp(str)
puts(str);
}
分享到:
相关推荐
C语言函数指针与指针函数训练.zip
这个是 周立功老师空间的例子,感觉不错就转过来了,,,大家一起学习下!!!
函数指针
指针函数和函数指针变量指针 函数和函数指针变量
彻底理解指针,指针数组和数组指针,指针函数和函数指针.doc
我知道函数指针是指向函数的指针,指针函数还是指一个函数的返回值是一个指针,但下面 的几道题还是感觉很迷惑。各位能否讲的详细点呢? (1)float(**def)[10] def是什么? (2)double*(*gh)[10] gh是什么? (3)double...
本文叙述了函数指针和指针函数的区别,防止程序员混淆两者。
C语言指针函数和函数指针详细介绍.
C/C++ 函数指针的意义,函数指针的用法
详解函数指针和指针函数 函数类型 (*指针变量名)(形参列表); “函数类型”说明函数的返回类型,由于“()”的优先级高于“*”,所以指针变量名外的括号必不可少,后面的“形参列表”表示指针变量指向的函数所带的...
函数指针和指针函数的区别,以及const的用法,指针常量,常量指针的用法
C++中一般函数指针和类的成员函数指针的区别
函数名与函数指针 一 通常的函数调用 一个通常的函数调用的例子: //自行包含头文件 void MyFun(int x); //此处的申明也可写成:void MyFun( int ); int main(int argc, char* argv[]) { MyFun(10); //这里是调用...
函数指针和指针函数区别,腾讯1面的考题,它们的作用分别是什么?
指针函数与函数指针
函数指针是C语言中几个难点之一。由于8051的C编译器的独特要求,函数指针和再入函数有更多的挑战需要克服。主要由于函数变量的传递。
易语言简单类函数指针源码,简单类函数指针,创建线程,取类函数指针,类函数,娃哈哈,CreateThread,SetWindowTextA
指针 函数指针 (全局函数/类成员函数)和函数对象