哪位大神可以详细介绍下前面四句的意思吗,c语言造诣不够

这是keil工程iap跳转程序,
typedef void (*iapfun)(void);//这句是头文件中的定义
iapfun jump2app; 这是c文件中的声明
jump2app=(iapfun)*(vu32*)(appxaddr+4); //c文件函数中的调用
jump2app();//函数中的调用

跃然一笑
浏览 228回答 2
2回答

波斯汪

typedef void (*iapfun)(void);定义函数指针iapfun jump2app;定义函数指针对象jump2app=(iapfun)*(vu32*)(appxaddr+4);为函数指针对象赋值jump2app();调用函数以下是一个例子:// 定义一个函数void fun() { printf("fun\n");}// 定义函数指针,typedef void (*lpfn)();// 注意二者要匹配,否则会报错lpfn p = fun;// 调用函数p()效果同fun()p();函数指针的一个作用是可以将函数作为参数传递。回忆一下c语言中的sort函数,用户可以自定义排序准则函数,然后将其提交给sort函数调用。

qq_花开花谢_0

typedefelemtype*triplet是定义一个triplet类型,它与elemtype*等价。triplet&t不是C的用法,这是C++的引用参数传递,这样对形参t的修改会反映到实参本身。
打开App,查看更多内容
随时随地看视频慕课网APP