- 相關(guān)推薦
C語(yǔ)言零碎知識點(diǎn)
C語(yǔ)言是一個(gè)有結構化程序設計、具有變量作用域以及遞歸功能的過(guò)程式語(yǔ)言。下面我們來(lái)看看C語(yǔ)言零碎知識點(diǎn)。

1.編譯預處理
2.宏定義:標識符代替字符串;分為有參數和無(wú)參數
3.#undef:刪除前面定義的宏的名字。
4.無(wú)參宏:宏名后不帶參數,一般形式:#define 標識符 字符串 ①宏定義不是說(shuō)明或語(yǔ)句,在行末不必加分號,如加上分號則連分號一起置換;②宏定義必須寫(xiě)在函數之外,其作用域為宏定義命令起到源程序結束。如要終止其作用域可使用#undef命令;③宏名在源程序中若用引號括起來(lái),則預處理程序不對其作宏帶換;④宏定義允許嵌套,在宏定義的字符串中可以使用已經(jīng)定義的宏名。在宏展開(kāi)時(shí)由預處理程序層層代換。⑤習慣上宏名用大寫(xiě)字母表示,以便于與變量區別。⑥宏定義只是簡(jiǎn)單的字符串代換,是在預處理完成的,而typedef是在編譯時(shí)處理的,它不是作簡(jiǎn)單的代換,而是對類(lèi)型說(shuō)明符重新命名。
5.帶參宏定義:#define 標識符 字符串(含有參數)
#define M(y) (y*y + 3*y)①宏名和參數表之間不能有空格出現;②形式參數不分配內存單元因此不必做類(lèi)型定義只是符號代換,不存在值傳遞的問(wèn)題;③形參是標識符,實(shí)參可以是表達式;④形參通常要用括號括起來(lái)以避免出錯;
6.文件包含:把指定的文件插入該命令行位置取代該命令行,從而把指定的文件和當前的源程序文件連成一個(gè)源文件。
1、#define
命令#define定義了一個(gè)標識符及一個(gè)串。在源程序中每次遇到該標識符時(shí),均以定義的串代換它。ANSI標準將標識符定義為宏名,將替換過(guò)程稱(chēng)為宏
替換。命令的一般形式為:
#define identifier string
注意:
1該語(yǔ)句沒(méi)有分號。在標識符和串之間可以有任意個(gè)空格,串一旦開(kāi)始,僅由一新行結束。
2宏名定義后,即可成為其它宏名定義中的一部分。
3宏替換僅僅是以文本串代替宏標識符,前提是宏標識符必須獨立的識別出來(lái),否則不進(jìn)行替換。例如:#define XYZ
this is a test,使用宏printf("XYZ");//該段不打印"this is a test"而打印"XYZ"。因為預編譯器識
別出的是"XYZ"
4如果串長(cháng)于一行,可以在該行末尾用一反斜杠' '續行。
【C語(yǔ)言零碎知識點(diǎn)】相關(guān)文章:
C語(yǔ)言知識點(diǎn)精選09-16
C語(yǔ)言知識點(diǎn)匯總06-14
C語(yǔ)言知識點(diǎn)集錦09-25
C語(yǔ)言指針知識點(diǎn)10-10
C語(yǔ)言數組知識點(diǎn)10-14
C語(yǔ)言數組知識點(diǎn)07-15
C語(yǔ)言知識點(diǎn)講解07-25
C語(yǔ)言數組知識點(diǎn)總結10-17
C語(yǔ)言常用知識點(diǎn)匯總06-09