1.預(yù)處理指令分類:
預(yù)處理功能 | 如下 |
---|---|
宏定義: | |
文件包含 | |
條件編譯 |
2.條件編譯目的:防止文件重復(fù)包含和編譯
條件編譯當(dāng)然也可以用條件語句來實(shí)現(xiàn)孤页。 但是用條件語句將會(huì)對(duì)整個(gè)源程序進(jìn)行編譯谆构,生成的目標(biāo)程序程序很長谅河,而采用條件編譯,則根據(jù)條件只編譯其中的程序段1或程序段2叶骨,生成的目標(biāo)程序較短茫多。如果條件選擇的程序段很長,采用條件編譯的方法是十分必要的忽刽。
3.標(biāo)識(shí):以#開頭的都是一條預(yù)編譯指令
形式一
//先測試x是否被宏定義過
#ifdef x
//代碼段1
#else
//代碼段2
#endif
形式二
//先測試x是否被宏定義過,最主要目的是防止頭文件的重復(fù)包含和編譯
#ifndef x
//如果x沒有被宏定義過天揖,定義x,并編譯程序段 1
//代碼段1
#else
//如果x已經(jīng)定義過了則編譯程序段2的語句跪帝,“忽視”程序段 1
//代碼段2
#endif