单片机C语言的编译模式,手把手教你学单片机的C语言程序设计六编译预处理.pdf...
手把手教你學(xué)單片機(jī)的C語言程序設(shè)計(jì)六編譯預(yù)處理
維普資訊
\ 學(xué) 習(xí)單片機(jī)
所謂螭譯預(yù)處理,是蝙譯囂在對C語言源程序進(jìn)行正常墑譯之前,先對一些特殊的預(yù)處理命令作解釋,產(chǎn)生一個(gè)新
的源程序.蝙譯預(yù)處理主要為程序調(diào)試.移植等提供便剃,是一個(gè)非常實(shí)用的功能
到文件結(jié)束。如果需要終止宏定義的作 uchar code SEG7 f10I一
用域.可以用#undef命令。例如: {Oxc0.0xf9.0Xa4.0xb0.0x99.0xg2.0x82.0xf
#undefPr 8.0x800x,gO.}://3
J,一 … … 一 一 =4一 一 :
則該語句之后的PI不再代表 314,這
在源程序中.為了區(qū)分預(yù)處理命令 voidmain(void) //5
樣可以曼活控制宏定義的范圍。
和一般的C語句的不同.所有預(yù)處理 f
4)宏定義時(shí)可以引用己經(jīng)定義的
命令行都以符號。群”開頭.并且結(jié)尾不 uchera.b.sum; /7/
宏名。例如:
用分號。預(yù)處理命令可以出現(xiàn)在程序任 a=55; //8
#defineR 20
何位置,但習(xí)慣上盡可能地寫在源程序 b:20o: //9
#define PI314
的開頭.其作用范圍從其出現(xiàn)的位置到 sum=a+b; lil0
#defineALL PIR
文件尾 。 P2=SEG7[aum/1。0】: Ⅳ11
5 對程序中用雙引號擴(kuò)起來的孛 P1=SEG7【(sum%100)/10]; #12
C語言提供的預(yù)處理命令主要有:
符串內(nèi)的字符.不進(jìn)行宏的替換操作。 P0=SEG7【sum%10]; #13
宏定義、文件包含和條件編譯。其中宏
2.帶參數(shù)的宏定義 whiel(11、 //14
定義分為帶參數(shù)的宏定義和不帶參數(shù)
為了進(jìn)一步擴(kuò)大宏的應(yīng)用范圍.在 } //15
的宏定義。
定義宏時(shí).還可以帶參數(shù)。帶參數(shù)的宏 編譯通過后.將生成的cslO.hex
1.不帶參數(shù)的宏定義
定義的一般形式為: 文件燒錄到89S51芯片中。將芯片插
不帶參數(shù)的宏定義的一般形式為:
#define標(biāo)識符(參數(shù)表)宇符串 入到
總結(jié)
以上是生活随笔為你收集整理的单片机C语言的编译模式,手把手教你学单片机的C语言程序设计六编译预处理.pdf...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [js] localStorage什么
- 下一篇: 前端学习(2850):简单秒杀系统学习之