首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > 单片机 >

有一段代码,百思一得其解。TI的高级工程师写的,一句

2013-11-26 
有一段代码,百思一得其解。TI的工程师写的,一句。另外,文件开头已经定义了 #define VOID (void) 我想的是, V

有一段代码,百思一得其解。TI的工程师写的,一句。


另外,文件开头已经定义了 
#define VOID (void) 

我想的是, VOID task_id; 这句是干嘛用的。



[解决办法]

引用:
Quote: 引用:

应该不是标准 C/C++ 的做法,可能是特定编译器支持的一个方式,表示该参数无效(unspecified)。


既然表示参数无用,为什么要传进来呢?


有利于函数原型统一,有些需要传参数,有些不需要,避免定义两个函数原型。
写osal的时候的眼光可能不只是在TI的芯片上。这是一个通用的类操作系统。
[解决办法]
引用:
Quote: 引用:

task_id 没有使用,有些编译器会 产生 warning,这样是为了消除 warning


编译器只有一种,因为这些代码只是供一类芯片使用的。
我将这句注释掉了,编译器没有报错。

 只会是 warning ,没有错。
这些代码只是供一类芯片使用,但编译器不一定只有一种,比如 keil、iar、gcc,在gcc里就有warning,ti写的时候并不知道用户用什么编译器,而且在开发中要消除warning的。

热点排行