C 巨集的學習筆記

2022-05-06 14:18:10 字數 772 閱讀 7793

.c/c++中巨集總結c程式的源**中可包括各種編譯指令,這些指令稱為預處理命令。雖然它們實際上不是c語言的一部分,但卻擴充套件了c程 

序設計的環境。本節將介紹如何應用預處理程式和注釋簡化程式開發過程,並提高程式的可讀性。 

ansi標準定義的c語言預處理程式包括下列命令: 

#define,#error,#i 

nclude,#if,#else,#elif,#endif,#ifdef,#ifndef,#undef,#line,#pragma等。非常明顯,所有預處理命令均以符號#開頭,下面分別加以介紹。

1、#define 

命令#define定義了乙個識別符號及乙個串。在源程式中每次遇到該識別符號時,均以定義的串代換它。ansi標準將識別符號定義為巨集名,將替換過程稱為巨集 

替換。命令的一般形式為: 

#define identifier string 

注意: 

? 該語句沒有分號。在識別符號和串之間可以有任意個空格,串一旦開始,僅由一新行結束。 

? 巨集名定義後,即可成為其它巨集名定義中的一部分。 

? 巨集替換僅僅是以文字串代替巨集識別符號,前提是巨集識別符號必須獨立的識別出來,否則不進行替換。例如: #define xyz 

this is a test,使用巨集printf("xyz");//該段不列印"this is a test"而列印"xyz"。因為預編譯器識 

別出的是"xyz" 

? 如果串長於一行,可以在該行末尾用一反斜槓' \'續行。

C語言基礎學習筆記 巨集

巨集定義 define用來定義乙個識別符號和乙個字串,用這個識別符號替代這個字串。1.不帶引數的巨集定義 define 巨集名 字串 表示這是一條預處理命令 巨集名,是乙個識別符號,要符合識別符號的命名規則,並要求大寫 字串的位置可以是常量 表示式 格式字串 注意 巨集定義不是語句,不需要在末尾加分...

巨集定義 C語言基礎學習筆記

define include ifndef define maxszie 10000帶引數的巨集 define add x,y x y define plus x,y add x,y define add x,y x y 呼叫 plus plus a,b c 呼叫結果 就是按照順序巢狀 最終 c b...

C語言程式設計 學習筆記 巨集定義

編譯預處理指令 開頭的是編譯預處理指令 它們不是c語言的成分,但是c語言程式離不開它們 define用來定義乙個巨集 如 define pi 3.14159這樣pi這個東西就是3.14159的值 在編譯過程中,計算機會把 中出現的pi全部換成3.14159 也可以有如下定義 define forma...