巨集 預編譯(day12)

2022-04-03 02:42:38 字數 1527 閱讀 3706

指標陣列裡的每個儲存區是乙個指標型別

的儲存區

字元指標陣列裡包含多個字元型別指標,其中

每個指標可以表示乙個字串

字元指標陣列可以用來表示多個相關字串

主函式的第二個引數是乙個字元指標陣列,

其中每個指標代表乙個字串,所有

這些字串的內容都來自於使用者的命令

主函式的第乙個引數是乙個整數,它表示

第二個引數裡的指標個數

#define預處理指令可以用來定義巨集

巨集可以用來給數字起名字

定義巨集的時候要把巨集名稱寫在#define預處理

指令後,巨集名稱後寫它所代表的數字

巨集名稱通常由大寫英文本母構成

巨集名稱裡不可以包含空格

用巨集給數字起名字的時候不可以使用賦值

操作符可以在程式裡使用巨集名稱代表它所對應的數字,

編譯器會把程式裡的所有巨集名稱替換成

它所代表的數字

可以在編譯命令裡使用-d選項臨時指定

巨集所代表的數字

巨集還可以給乙個計算公式起名字

計算公式裡包含未知數字,巨集的引數用來

表示這些未知數字

編譯器採用二次替換的方式處理帶引數的巨集

巨集的引數不一定代表數字,所以它沒有型別

如果巨集有多個引數就需要用逗號把他們分開

巨集不可以使用自己的儲存區和函式進行資料

傳遞巨集沒有形式引數也沒有用來存放返回值的

儲存區能當作數字使用的巨集必須編寫成乙個表示式

(因為巨集沒有用來記錄返回值的儲存區)

巨集的引數直接代表函式的儲存區,在巨集裡對

引數內容的修改可以直接影響函式

因為巨集沒有用來記錄返回值的儲存區,所以

不能保證優先計算巨集裡面的操作符

所有能當作數字使用的巨集必須寫在一對小括號

裡面巨集沒有形式引數所以不能保證優先計算引數

裡面的操作符

編寫巨集的時候所有能當做數字使用的引數也都

必須寫在小括號裡面

不要把自增或自減的結果作為巨集的引數使用

編寫巨集的時候可以使用一些特殊的符號,它們

叫做巨集操作符

#是乙個巨集操作符,它可以把巨集的引數轉換

成字串字面值

##也是乙個巨集操作符,它可以把乙個代表

識別符號的引數和其他內容連線得到

乙個新的識別符號

條件編譯可以在編譯的時候從幾組語句裡

選擇一組編譯而忽略其他組

#ifdef/#ifndef...#else...#endif以上結構可以根據乙個巨集名稱是否被定義過

從兩組語句中選擇一組編譯

最開始的預處理指令應該從兩個裡選擇乙個,

它們的後面都要跟著乙個巨集名稱

如果選擇#ifdef就表示它後面的巨集名稱被定義

過就編譯前一組語句,否則編譯後一組

語句 如果選擇#ifndef就剛好相反

#if...#elif(任意多次)...#else...#endif這個結構也可以實現條件編譯,它可以根據

任意邏輯表示式從多組語句中選擇一組

編譯

day12 上下分頁

modelandview.addobject houses pageinfo.getlists pageinfo pageinfo ihouseservice.searchhouseviewbytype currentpage,housetype modelandview.addobject pag...

實習日記 Day12

昨天穿少了,今天穿厚了。即使脫下外套,坐在辦公室的我也覺得好熱啊 今天是糾結的一天呢 1.實習生的小小感傷仍在延續 今天在和外國同事郵件聯絡的時候,無意中發現自己的skype內建備註是unpaid intern,無薪實習生 雖然我每天是有一些薪水的,但這點錢跟正式員工比,其實跟無薪差不多了吧 又想起...

課後實驗 Day1 2

1.在home下建立乙個以自己名字首字母開始的資料夾 mkdir 名字首字母 2.進入此資料夾 cd 名字首字母 3.在該資料夾下直接建立 aaa bbb 資料夾 mkdir aaa bbb p 4.繼續在建立ccc ddd資料夾 mkdir ccc ddd 5.進入ccc資料夾 在此資料夾中建立3...