当前位置: 代码迷 >> 单片机 >> 有一段代码,百思一得其解。TI的助理工程师写的,一句
  详细解决方案

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

热度:45   发布时间:2016-04-28 15:06:16.0
有一段代码,百思一得其解。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的。