为了账号安全,请及时绑定邮箱和手机立即绑定

这里有一个疑惑,不是很明白,请问函数指针作为形参的时候是怎么声明的?

这里有一个疑惑,不是很明白,请问函数指针作为形参的时候是怎么声明的?

函数式编程 2021-07-23 19:15:46
我在ucosii系统移植的时候app.c文件里看到有这样的,os_err = OSTaskCreateExt((void (*)(void *)) App_TaskStart).这是什么意思?不是应该用OSTaskCreateExt((void (*App_TaskStart)(void *)) ).这样声明的吗?
查看完整描述

2 回答

?
缥缈止盈

TA贡献2041条经验 获得超4个赞

(void (*)(void *)) App_TaskStart

在这里是将App_TaskStart的类型强制转换成void类型的函数指针,此函数指针带一个void类型的指针参数

查看完整回答
反对 回复 2021-07-29
?
慕娘9325324

TA贡献1783条经验 获得超4个赞

这边确实是 将App_TaskStart类型强转成 void(*)(void *)类型,
类型强转的语法:(目标类型)原类型,
而你所说的void (*App_TaskStart)(void *)是定义一个 函数指针!

查看完整回答
反对 回复 2021-07-29
  • 2 回答
  • 0 关注
  • 338 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信