小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

UCOS-II中 OS_EXT 對全局變量的定義和聲明

 豆芽愛尚閱 2014-05-13
 內(nèi)核代碼中利用宏定義來區(qū)分和控制全局變量中定義和聲明:
 1、在uCOS_II.h 文件中明確定義
  #ifdef   OS_GLOBALS
  #define  OS_EXT
  #else
  #define  OS_EXT  extern
  #endif
意思是說:如果在包含頭文件uCOS_II.h之前宏定義了OS_GLOBALS那么OS_EXT將替換為空(即為全局變量定義),否則替換為extern(即為全局變量聲明)。
2、又有在uCOS_II.c中,包含了uCOS_II.h ,并在其前面宏定義了OS_GLOBALS (即全局變量的聲明只在該文件中被定義了),且宏定義了OS_MASTER_FILE,然而在其他文件要包含uCOS_II.h文件之前,也有宏定義確定包含該文件里的只是全局變量的聲明,通過下面宏定義實現(xiàn):
#ifndef  OS_MASTER_FILE
#define  OS_GLOBALS
#include <ucos_ii.h>
#endif

3、在ucos_ii.h中包含內(nèi)核中所有函數(shù)的聲明,在ucos_ii.c中又是這么寫的:
#define  OS_GLOBALS                           /* Declare GLOBAL variables                              */
#include <ucos_ii.h>

#define  OS_MASTER_FILE                       /* Prevent the following files from including includes.h */
#include <os_core.c>
#include <os_flag.c>
#include <os_mbox.c>
#include <os_mem.c>
#include <os_mutex.c>
#include <os_q.c>
#include <os_sem.c>
#include <os_task.c>
#include <os_time.c>
意思就是:包含了各模塊的 *.c 源文件 ,其他各模塊的函數(shù)實現(xiàn)分別在各模塊中的c文件中實現(xiàn)。
4、這一招就是uscos-ii的奇淫訣竅

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多