C语言函数指针该如何理解,有什么优缺点

2019-12-30 19:23发布

今天看到一个程序代码,调用函数是通过函数指针来调用的。

void (*gde)(void);//定义一个函数指针

a.c文件
   gde=  bcd;

b.c文件
  void bcd(void)//功能函数
  {

}

c.c文件

gde();//通过函数指针调用bcd这个函数

这种调用方式除了可以优化文件包含,底层调用顶层,还有什么作用啊?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
14条回答
security
1楼-- · 2019-12-30 23:08
面向抽象,与实现解耦。
4058665
2楼-- · 2019-12-31 01:37
 精彩回答 2  元偷偷看……
DevLabs
3楼-- · 2019-12-31 01:50
函数和函数指针的区别是什么?函数名实际上也可以理解为一个函数指针,只不过绑定到固定的地址,而函数指针呢,指哪里算哪里,只要对应的地址是函数入口,那就能调用它。剩下的靠你的想象力了。
int
4楼-- · 2019-12-31 07:13
解耦,可用于面向对象的思想进行编程
zcs
5楼-- · 2019-12-31 09:48
本帖最后由 zcs 于 2017-2-6 14:46 编辑

gde =  Function移动;
或者gde =  Function电信;
或者gde =  Function联通;

然后gde();  
具体执行哪个程序由你前面的赋值决定。
GYJ
6楼-- · 2019-12-31 13:39
zcs 发表于 2017-2-6 14:34
gde =  Function移动;
或者gde =  Function电信;
或者gde =  Function联通;

优点就是,灵活
确定,容易出问题。尤其是多人开发的时候,指不定被人莫名其妙的改了~

一周热门 更多>