文章責編:niufeifei
看了本文的網(wǎng)友還看了學歷| 高考 中考 考研 自考 成考 外語| 四六級 職稱英語 商務(wù)英語 公共英語 資格| 公務(wù)員 報關(guān)員 銀行 證券 司法 導游 教師 計算機| 等考 軟考
工程|一建 二建 造價師 監(jiān)理師 咨詢師 安全師 結(jié)構(gòu)師 估價師 造價員 會計| 會計證 會計職稱 注會 經(jīng)濟師 稅務(wù)師 醫(yī)學| 衛(wèi)生資格 醫(yī)師 藥師 [更多]
本例中采用了第三種形式的條件編譯。在程序第一行宏定義中,定義R為1,因此在條件編譯時,常量表達式的值為真, 故計算并輸出圓面積。上面介紹的條件編譯當然也可以用條件語句來實現(xiàn)。 但是用條件語句將會對整個源程序進行編譯,生成的目標代碼程序很長,而采用條件編譯,則根據(jù)條件只編譯其中的程序段1或程序段2, 生成的目標程序較短。如果條件選擇的程序段很長, 采用條件編譯的方法是十分必要的。
本章小結(jié)
1. 預(yù)處理功能是C語言特有的功能,它是在對源程序正式編譯前由預(yù)處理程序完成的。程序員在程序中用預(yù)處理命令來調(diào)用這些功能。
2. 宏定義是用一個標識符來表示一個字符串,這個字符串可以是常量、變量或表達式。在宏調(diào)用中將用該字符串代換宏名。
3. 宏定義可以帶有參數(shù),宏調(diào)用時是以實參代換形參。而不是“值傳送”。
4. 為了避免宏代換時發(fā)生錯誤,宏定義中的字符串應(yīng)加括號,字符串中出現(xiàn)的形式參數(shù)兩邊也應(yīng)加括號。
5. 文件包含是預(yù)處理的一個重要功能,它可用來把多個源文件連接成一個源文件進行編譯,結(jié)果將生成一個目標文件。
6. 條件編譯允許只編譯源程序中滿足條件的程序段,使生成的目標程序較短,從而減少了內(nèi)存的開銷并提高了程序的效率。
7. 使用預(yù)處理功能便于程序的修改、閱讀、移植和調(diào)試,也便于實現(xiàn)模塊化程序設(shè)計。
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |