嵌入式之函数指针和回调函数

概念

函数指针即指向函数的指针
通常我们说的指针变量是指向一个整型、字符型或数组等变量,而函数指针是指向函数。

函数指针可以像一般函数一样,用于调用函数、传递参数。

函数指针的定义方式为:

函数返回值类型 (* 指针变量名) (函数参数列表);
int (*p)(int a, int b)

作用

一是可以作为参数传递给另一个函数;回调函数:将一个函数指针作为参数传递给其它函数。后者将“回调”用户函数。
关于typedef 函数指针的用法

int add(int a, int b) {
return a + b;
}
typedef int (PTypeFun1)(int, int); // 声明一个函数类型
typedef int (*PTypeFun2)(int, int); // 声明一个函数指针类型 PtypeFun2变成了类型
int (*padd)(int, int); // 传统形式,定义一个函数指针变量 ,这里只是一个指针
int main() {
PTypeFun1 *pTypeAdd1 = add;
PTypeFun2 pTypeAdd2 = add;
padd = add;
cout << pTypeAdd1(1, 2) << endl;
cout << pTypeAdd2(1, 2) << endl;
cout << padd(1, 2) << endl;
return 0;

实例: 函数指针
image

本文作者:学不会xuebuhui

本文链接:https://www.cnblogs.com/codedingzhen/p/18047145

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   学不会xuebuhui  阅读(52)  评论(0编辑  收藏  举报
  1. 1 给我一首歌的时间 周杰伦
给我一首歌的时间 - 周杰伦
00:00 / 00:00
An audio error has occurred.
Language: javascript //图片预览
点击右上角即可分享
微信分享提示
💬
评论
📌
收藏
💗
关注
👍
推荐
🚀
回顶
收起
🔑