freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

工學(xué)]計(jì)算機(jī)本科c語(yǔ)言第九章講(編輯修改稿)

2025-02-14 19:43 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 nsc=%d\nvv=%d\n,sa,sb,sc,vv)。 } 文件包含 文件包含是 C預(yù)處理程序的另一個(gè)重要功能 。 include命令告訴預(yù)處理程序 , 將其后面所跟的文件的內(nèi)容插入到當(dāng)前文件中 。 即把指定的文件插入該命令行位置取代該命令行 , 從而把指定的文件和當(dāng)前的源程序文件連成一個(gè)源文件 。 include命令行的兩種形式為: include 文件名 include 文件名 例如: include include 在程序設(shè)計(jì)中 , 文件包含是很有用的 。 一個(gè)大的程序可以分為多個(gè)模塊 , 由多個(gè)程序員分別編程 。 有些 公用的符號(hào)常量或宏定義 等可單獨(dú)組成一個(gè)文件 , 在其它文件的開(kāi)頭用包含命令包含該文件即可使用 。 這樣 , 可避免在每個(gè)文件開(kāi)頭都去書(shū)寫(xiě)那些公用量 , 從而節(jié)省時(shí)間 ,并減少出錯(cuò) 。 對(duì)文件包含命令還要說(shuō)明以下幾點(diǎn): 1. 包含命令中的文件名可以用雙引號(hào)括起來(lái) , 也可以用尖括號(hào)括起來(lái) 。 例如以下寫(xiě)法都是允許的: include include 但是這兩種形式是有區(qū)別的:使用尖括號(hào)表示在包含文件目錄中去查找 (包含目錄是由用戶(hù)在設(shè)置環(huán)境時(shí)設(shè)置的 ), 而不在源文件目錄去查找; 使用雙引號(hào)則表示首先在當(dāng)前的源文件目錄中查找 , 若未找到才到包含目錄中去查找 。 用戶(hù)編程時(shí)可根據(jù)自己文件所在的目錄來(lái)選擇某一種命令形式 。 2. 一個(gè) include命令只能指定一個(gè)被包含文件,若有多個(gè)文件要包含,則需用多個(gè) include命令。 3. 文件包含允許嵌套 , 即在一個(gè)被包含的文件中又可以包含另一個(gè)文件 。 include void p() {…….} include void s() {…….} include void main() {…….} 條件編譯 預(yù)處理程序提供了條件編譯的功能。可以按不同的條件去編譯不同的程序部分,因而產(chǎn)生不同的目標(biāo)代碼文件。這對(duì)于程序的移植和調(diào)試是很有用的。 條件編譯有三種形式 , 下面分別介紹: 1. 第一種形式: ifdef 標(biāo)識(shí)符 程序段 1 else 程序段 2 endif 它的功能是 , 如果標(biāo)識(shí)符已被 define命令定義過(guò)則對(duì)程序段 1進(jìn)行編譯;否則對(duì)程序段 2進(jìn)行編譯 。 如果沒(méi)有程序段 2(它為空 ), 本格式中的 else可以沒(méi)有 , 即可以寫(xiě)為: ifdef 標(biāo)識(shí)符 程序段 endif 2. 第二種形式: ifndef 標(biāo)識(shí)符 程序段 1 else 程序段 2 endif 與第一種形式的區(qū)別是將 “ ifdef”改為“ ifndef”。 它的功能是 , 如果標(biāo)識(shí)符未被define命令定義過(guò)則對(duì)程序段 1進(jìn)行編譯 , 否則對(duì)程序段 2進(jìn)行編譯 。 這與第一種形式的功能正相反 。 3. 第三種形式: if 常量表達(dá)式 程序段 1 else 程序段 2 endif 它的功能是 , 如常量表達(dá)式的值為真 (非 0),則對(duì)程序段 1 進(jìn)行編譯 , 否則對(duì)程序段 2進(jìn)行編譯 。 因此可以使程序在不同條件下 , 完成不同的功能 。 【 例 】 define R 1 main(){ float c,r,s。 printf (input a number: )。 scanf(%f,amp。c)。 if R r=*c*c。 printf(area of round is: %f\n,r)。 else s=c*c。 printf(area of square is: %f\n,s)。 endif } 本例中采用了第三種形式的條件編譯 。 在程序第一行宏定義中 , 定義R為 1, 因此在條件編譯時(shí) , 常量表達(dá)式的值為真 , 故計(jì)算并輸出圓面積 。 上面介紹的條件編譯當(dāng)然也可以用條件語(yǔ)句來(lái)實(shí)現(xiàn) 。 但是用條件語(yǔ)句將會(huì)對(duì)整個(gè)源程序進(jìn)行編譯 , 生成的目標(biāo)代碼程序很長(zhǎng) , 而采用條件編譯 , 則根據(jù)條件只編譯其中的程序段 1或程序段 2, 生成的目標(biāo)程序較短 。 如果條件選擇的程序段很長(zhǎng) , 采用條件編譯的方法是十分必要的 。 本章小結(jié) , 它是在對(duì)源程序正式編譯前由預(yù)處理程序完成的 。 程序員在程序中用預(yù)處理命令來(lái)調(diào)用這些功能 。 2. 宏定義是用一個(gè)標(biāo)識(shí)符來(lái)表示一個(gè)字符串 ,這個(gè)字符串可以是常量 、 變量或表達(dá)式 。 在宏調(diào)用中將用該字符串代換宏名 。 3. 宏定義可以帶有參數(shù) , 宏調(diào)用時(shí)是以實(shí)參代換形參 。 而不是 “ 值傳送 ” 。 4. 為了避免宏代換時(shí)發(fā)生錯(cuò)誤 , 宏定義中的字符串應(yīng)加括號(hào) , 字符串中出現(xiàn)的形式參數(shù)兩邊也應(yīng)加括號(hào) 。 , 它可用來(lái)把多個(gè)源文件連接成一個(gè)源文件進(jìn)行編譯 , 結(jié)果將生成一個(gè)目標(biāo)文件 。 段 , 使生成的目標(biāo)程序較短 , 從而減少了內(nèi)存的開(kāi)銷(xiāo)并提高了程序的效率 。 、 閱讀 、 移植和調(diào)試 , 也便于實(shí)現(xiàn)模塊化程序設(shè)計(jì) 。 再見(jiàn)! 本章練習(xí) 一、選擇題 以下敘述不正確的是 _______ A) 預(yù)處理命令行都必須以 號(hào)開(kāi)始 B) 在程序中凡是以 號(hào)開(kāi)始的語(yǔ)句行都是預(yù)處理命令行 C) C程序在執(zhí)行過(guò)程中對(duì)預(yù)處理命令行進(jìn)行處理 D) 以下是正確的宏定義 define IBM_PC 2. 以下敘述中正確的是 _______ A)
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1