在线现看午夜福利片|女人16久久免费视频|鲁丝片一区鲁丝片二区鲁丝|一区二区三区欧美在线

  1. 
    
    <b id="glvx9"></b>
        1. <blockquote id="glvx9"><meter id="glvx9"></meter></blockquote>
            首頁考試吧論壇Exam8視線考試商城網(wǎng)絡(luò)課程模擬考試考友錄實(shí)用文檔求職招聘論文下載
            2013中考
            法律碩士
            2013高考
            MBA考試
            2013考研
            MPA考試
            在職研
            中科院
            考研培訓(xùn) 自學(xué)考試 成人高考
            四 六 級
            GRE考試
            攻碩英語
            零起點(diǎn)日語
            職稱英語
            口譯筆譯
            申碩英語
            零起點(diǎn)韓語
            商務(wù)英語
            日語等級
            GMAT考試
            公共英語
            職稱日語
            新概念英語
            專四專八
            博思考試
            零起點(diǎn)英語
            托?荚
            托業(yè)考試
            零起點(diǎn)法語
            雅思考試
            成人英語三級
            零起點(diǎn)德語
            等級考試
            華為認(rèn)證
            水平考試
            Java認(rèn)證
            職稱計算機(jī) 微軟認(rèn)證 思科認(rèn)證 Oracle認(rèn)證 Linux認(rèn)證
            公 務(wù) 員
            導(dǎo)游考試
            物 流 師
            出版資格
            單 證 員
            報 關(guān) 員
            外 銷 員
            價格鑒證
            網(wǎng)絡(luò)編輯
            駕 駛 員
            報檢員
            法律顧問
            管理咨詢
            企業(yè)培訓(xùn)
            社會工作者
            銀行從業(yè)
            教師資格
            營養(yǎng)師
            保險從業(yè)
            普 通 話
            證券從業(yè)
            跟 單 員
            秘書資格
            電子商務(wù)
            期貨考試
            國際商務(wù)
            心理咨詢
            營 銷 師
            司法考試
            國際貨運(yùn)代理人
            人力資源管理師
            廣告師職業(yè)水平
            衛(wèi)生資格 執(zhí)業(yè)醫(yī)師 執(zhí)業(yè)藥師 執(zhí)業(yè)護(hù)士
            會計從業(yè)資格
            基金從業(yè)資格
            統(tǒng)計從業(yè)資格
            經(jīng)濟(jì)師
            精算師
            統(tǒng)計師
            會計職稱
            法律顧問
            ACCA考試
            注冊會計師
            資產(chǎn)評估師
            審計師考試
            高級會計師
            注冊稅務(wù)師
            國際內(nèi)審師
            理財規(guī)劃師
            美國注冊會計師
            一級建造師
            安全工程師
            設(shè)備監(jiān)理師
            公路監(jiān)理師
            公路造價師
            二級建造師
            招標(biāo)師考試
            物業(yè)管理師
            電氣工程師
            建筑師考試
            造價工程師
            注冊測繪師
            質(zhì)量工程師
            巖土工程師
            造價員考試
            注冊計量師
            環(huán)保工程師
            化工工程師
            咨詢工程師
            結(jié)構(gòu)工程師
            城市規(guī)劃師
            材料員考試
            監(jiān)理工程師
            房地產(chǎn)估價
            土地估價師
            安全評價師
            房地產(chǎn)經(jīng)紀(jì)人
            投資項(xiàng)目管理師
            環(huán)境影響評價師
            土地登記代理人
            繽紛校園 實(shí)用文檔 英語學(xué)習(xí) 作文大全 求職招聘 論文下載 訪談|游戲
            軟件水平考試
            軟件水平考試資訊
            軟件水平考試試題
            軟件水平考試專項(xiàng)輔導(dǎo)
            軟件水平考試交流互動
            軟件水平考試交流互動
            您現(xiàn)在的位置: 考試吧 > 軟件水平考試 > 復(fù)習(xí)資料 > 程序員資料 > 正文

            C語言初學(xué)者入門知識之預(yù)處理

              文件包含

              文件包含是C預(yù)處理程序的另一個重要功能。文件包含命令行的一般形式為: #include“文件名” 在前面我們已多次用此命令包含過庫函數(shù)的頭文件。例如:

              #include"stdio.h"

              #include"math.h"

              文件包含命令的功能是把指定的文件插入該命令行位置取代該命令行, 從而把指定的文件和當(dāng)前的源程序文件連成一個源文件。在程序設(shè)計中,文件包含是很有用的。 一個大的程序可以分為多個模塊,由多個程序員分別編程。 有些公用的符號常量或宏定義等可單獨(dú)組成一個文件, 在其它文件的開頭用包含命令包含該文件即可使用。這樣,可避免在每個文件開頭都去書寫那些公用量, 從而節(jié)省時間,并減少出錯。

              對文件包含命令還要說明以下幾點(diǎn):

              1. 包含命令中的文件名可以用雙引號括起來,也可以用尖括號括起來。例如以下寫法都是允許的: #include"stdio.h" #include 但是這兩種形式是有區(qū)別的:使用尖括號表示在包含文件目錄中去查找(包含目錄是由用戶在設(shè)置環(huán)境時設(shè)置的), 而不在源文件目錄去查找; 使用雙引號則表示首先在當(dāng)前的源文件目錄中查找,若未找到才到包含目錄中去查找。 用戶編程時可根據(jù)自己文件所在的目錄來選擇某一種命令形式。

              2. 一個include命令只能指定一個被包含文件, 若有多個文件要包含,則需用多個include命令。

              3. 文件包含允許嵌套,即在一個被包含的文件中又可以包含另一個文件。

              條件編譯

              預(yù)處理程序提供了條件編譯的功能。 可以按不同的條件去編譯不同的程序部分,因而產(chǎn)生不同的目標(biāo)代碼文件。 這對于程序的移植和調(diào)試是很有用的。 條件編譯有三種形式,下面分別介紹:

              1. 第一種形式:

              #ifdef 標(biāo)識符

              程序段1

              #else

              程序段2

              #endif

              它的功能是,如果標(biāo)識符已被 #define命令定義過則對程序段1進(jìn)行編譯;否則對程序段2進(jìn)行編譯。如果沒有程序段2(它為空),本格式中的#else可以沒有, 即可以寫為:

              #ifdef 標(biāo)識符

              程序段 #endif

              #define NUM ok

              main(){

              struct stu

              {

              int num;

              char *name;

              char sex;

              float score;

              } *ps;

              ps=(struct stu*)malloc(sizeof(struct stu));

              ps->num=102;

              ps->name="Zhang ping";

              ps->sex='M';

              ps->score=62.5;

              #ifdef NUM

              printf("Number=%d\nScore=%f\n",ps->num,ps->score);

              #else

              printf("Name=%s\nSex=%c\n",ps->name,ps->sex);

              #endif

              free(ps);

              }

              由于在程序的第16行插入了條件編譯預(yù)處理命令, 因此要根據(jù)NUM是否被定義過來決定編譯那一個printf語句。而在程序的第一行已對NUM作過宏定義,因此應(yīng)對第一個printf語句作編譯故運(yùn)行結(jié)果是輸出了學(xué)號和成績。在程序的第一行宏定義中,定義NUM表示字符串OK,其實(shí)也可以為任何字符串,甚至不給出任何字符串,寫為: #define NUM 也具有同樣的意義。 只有取消程序的第一行才會去編譯第二個printf語句。讀者可上機(jī)試作。

              2. 第二種形式:

              #ifndef 標(biāo)識符

              程序段1

              #else

              程序段2

              #endif

              與第一種形式的區(qū)別是將“ifdef”改為“ifndef”。它的功能是,如果標(biāo)識符未被#define命令定義過則對程序段1進(jìn)行編譯, 否則對程序段2進(jìn)行編譯。這與第一種形式的功能正相反。

              3. 第三種形式:

              #if 常量表達(dá)式

              程序段1

              #else

              程序段2

              #endif

              它的功能是,如常量表達(dá)式的值為真(非0),則對程序段1 進(jìn)行編譯,否則對程序段2進(jìn)行編譯。因此可以使程序在不同條件下,完成不同的功能

              #define R 1

              main(){

              float c,r,s;

              printf ("input a number: ");

              scanf("%f",&c);

              #if R

              r=3.14159*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,因此在條件編譯時,常量表達(dá)式的值為真, 故計算并輸出圓面積。上面介紹的條件編譯當(dāng)然也可以用條件語句來實(shí)現(xiàn)。 但是用條件語句將會對整個源程序進(jìn)行編譯,生成的目標(biāo)代碼程序很長,而采用條件編譯,則根據(jù)條件只編譯其中的程序段1或程序段2, 生成的目標(biāo)程序較短。如果條件選擇的程序段很長, 采用條件編譯的方法是十分必要的。

            上一頁  1 2 3 4  下一頁

              相關(guān)推薦:

              2012年軟考系統(tǒng)分析師考試60天完美復(fù)習(xí)計劃

              2012年軟件水平考試網(wǎng)絡(luò)工程師章節(jié)筆記講義匯總

              2012年上半年軟件水平考試成績查詢匯總

            文章搜索
            軟件水平考試欄目導(dǎo)航
            版權(quán)聲明:如果軟件水平考試網(wǎng)所轉(zhuǎn)載內(nèi)容不慎侵犯了您的權(quán)益,請與我們聯(lián)系800@exam8.com,我們將會及時處理。如轉(zhuǎn)載本軟件水平考試網(wǎng)內(nèi)容,請注明出處。