PIC單片機(jī)CCS之C語言(#IFDEF,#ENDIF的用法)
#IFNDEF
本文引用地址:http://m.butianyuan.cn/article/201611/315396.htm#ELSE
#ELIF
#ENDIF
語法: #ifdef id
cide
#elif
code
#else
code
#endif
和
#ifndef id
code
#elif
code
#else
code
#endif
id是一個預(yù)處理器標(biāo)識符,code是一段有效的C源程序.
目的:這個指示的執(zhí)行同#IF相似.在#IF里,如果指定的ID(用#DEFINE 創(chuàng)建的ID)對預(yù)處理器來說是已知的, 預(yù)處理器完全可以檢查到它;而在#IFDEF里,如果ID被定義了,則預(yù)處理器可以檢查到它,若沒有定義ID,則#IFNDEF可以檢查到它.
例子:
#define debug //定義debug
…
#ifdef debug //因?yàn)閐ebug在前面已定義,所以可執(zhí)行printf
printf(“debug poit a”);
#endif
例子文件:ex_sqw.c在前面已介紹過了
#INCLUDE
語法: #include
或
#include “filename”
filename是一個有效的PC文件名.它包括標(biāo)準(zhǔn)的驅(qū)動和路徑信息.帶有”.encrypted”擴(kuò)展名的是一個有效的PC文件名.標(biāo)準(zhǔn)的編譯器#include directive會接受帶有這種擴(kuò)展名的文件,將它們譯成可讀的.這允許包含的文件被分配,但不釋放出其源程序代碼.
目的:來自指定文件的的字符用作編輯的指針.如果沒有將完整的路徑指定給編譯器, 編譯器將使用指定的目錄的列表為project搜查文件.若文件名在“…”里,那么主源程序文件所在的目錄首先被搜查.若文件名在<…>里, 那么主源程序文件所在的目錄最后被搜查.
例子:#include <16c54.h>
#include
例子文件:ex_sqw.c在前面已介紹過了
#INT_GLOBAL
語法: #int_global
目的:這種指示將引起下面的函數(shù)代替編譯器產(chǎn)生中斷. 函數(shù)通常不要求,而用來產(chǎn)生警告.當(dāng)使用#int_global時(shí),編譯器不產(chǎn)生啟動代碼或清除代碼,也不存入寄存器.
例子:#int_global
isr(){ //將被定位在地址0x0004處
#asm
bsf isr_flug
retfie
#endasm
}
例子文件:ex_glint.c在前面已介紹過了
評論