返回信息流void TestVersion(void) ;
main()
{
U32 pTestFunInt ;
pTestFunInt = (U32)TestVersion ;
(*(void (*)(void))pTestFunInt)() ;
}
求解释此句:(*(void (*)(void))pTestFunInt)() ,谢谢
这是一条镜像帖。来源:北邮人论坛 / cpp / #46262同步于 2010/11/15
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖
【求解释】C中关于指向函数的指针
arm
2010/11/15镜像同步4 回复
订阅后,新回复会通过你的通知中心匿名送达。
4 条回复
【 在 nobody 的大作中提到: 】
: 把pTestFunInt类型转化成接受void参数返回值为void类型的函数指针,然后调用。
: --
非常感谢
函数指针,换种方式理解:
{U32 pTestFunInt ;
pTestFunInt = (U32)TestVersion ;
(*(void (*)(void))pTestFunInt)() ;
}
==
{U32 *pTestFunInt ;
pTestFunInt = (U32*)&TestVersion ; //这一行对不对,没写过这样的
(*pTestFunInt)() ;
}
或者typedef void (* New_type) (void);
(*(New_type)pTestFunInt)();