智能车制作

标题: 求大神,关于函数指针的问题。 [打印本页]

作者: 叶飘雨落    时间: 2014-11-17 08:12
标题: 求大神,关于函数指针的问题。
CodeWarrior5.1编译,函数指针这里出现奇怪的警告,求大神分析一下。
经过试验程序在MC9S12D64片子里边跑表面上没有问题,但是有警告就是很不爽。
  1. #include "common.h"


  2. typedef void (*FUN_PTR)(void);

  3. FUN_PTR fun1(void)
  4. {
  5.   uint8 i = 10;
  6.   while(i--)  ;
  7. }

  8. void LoadFun(FUN_PTR callback)
  9. {
  10.   callback();
  11. }


  12. void main(void)
  13. {
  14.   /* put your own code here */

  15.   LoadFun(fun1);

  16. }
  17.   
复制代码
[attach]71665[/attach]
[attach]71664[/attach]
Warning : C1404: Return expected

main.c line 6   

Warning : C1825: Indirection to different types ('void (*)()(*)()' instead of 'void (*)()')

main.c line 22   



作者: laughtianxia    时间: 2014-11-17 08:17
函数类型可以声明为返回类型??
作者: laughtianxia    时间: 2014-11-17 08:30


作者: 灰原哥哥    时间: 2014-11-17 09:15
你把func1定义为返回函数指针类型FUN_PTR的函数了。
事实上你需要将func1定义为返回void




欢迎光临 智能车制作 (http://dns.znczz.com/) Powered by Discuz! X3.2