如何使用Visual Studio 2010编写一个C语言程序,本经验将手把手教大家如何通过VS2010编写一个简单的C语言小程序......
2023-03-16 435 C语言
善于利用指针
指针是C的一大特色。
正确而灵活的运用它,可以使程序简洁、灵活、高效。
每一个学习和使用C语言的人都应当深入的学习和掌握指针。
指向函数的指针
什么是函数指针
指针就是地址,函数指针就是函数地址。
如果在程序中定义了一个函数,在编译时,编译系统为代码分配一段存储空间,这段存储空间的起始地址(入口地址)称为这个函数的指针。
int(*p)(int,int);
定义P指向函数的指针变量,它可以指向函数的类型为整型,且有两个整型参数的函数。
用函数指针变量调用函数
调用函数的两种形式:通过函数名调用函数和通过函数指针变量调用函数。
怎样定义和使用指向函数的指针变量
定义指向函数的指针变量的一般形式是:
类型名(*指针变量名)(函数参数列表);
这里的类型名是函数返回值的类型名;最后的圆括号是函数的象征。
【注】:
①在一个程序中,一个指针变量可以先后指向不同的函数;
②如果用指针调用该函数,必须先使指针变量指向该函数;p=max;这就把max函数的入口地址赋给了指针变量;
③用函数指针变量调用函数时,只需将(*p)代替函数名即可,在(*p)后的括号中根据需要写上形参。c=(*p)(a,b);
④对指向函数的指针变量是不能进行算术运算的,如p n,p ,p-- 等运算时无意义的。
⑤用函数名调用函数,只能调用所指定的一个函数,而通过指针变量调用函数可以先后调用同类型不同的函数;
例:输入两个整数,然后让用户选择1或2,选1时调用max函数,输出两者中的大数;选2时调用min函数,输出两者中的小数。
用指向函数的指针作函数参数
指向函数的指针变量的一个重要用途是把函数的地址作为参数传递到其他函数;
指向函数的指针可以作为函数参数,把函数的入口地址传递给形参,这样就能够在函数中使用实参函数。原理:假设函数名为fun,有两个形参x1,x2,定义x1,x2为指向函数的指针变量。在调用fun函数时,实参为两个函数名f1和f2,给形参传递的是f1和f2的入口地址。这样fun就可以调用f1和f2函数了。
例:有两个整数,由用户输入1,2和3,如输入1,则程序给出a和b的最大者,如输入2,则给出a,b中的最小者,输入3,则求a,b之和。
以上方法由办公区教程网编辑摘抄自百度经验可供大家参考!
标签: C语言
相关文章
如何使用Visual Studio 2010编写一个C语言程序,本经验将手把手教大家如何通过VS2010编写一个简单的C语言小程序......
2023-03-16 435 C语言