# 和 ## 操作符是和#define巨集使用的. 使用# 使在#後的首個引數返回為乙個帶引號的字串. 例如, 命令
#define to_string( s ) # s將會使編譯器把以下命令
cout << to_string( hello world! ) << endl;理解為
cout << "hello world!" << endl;使用##鏈結##前後的內容. 例如, 命令
#define concatenate( x, y ) x ## y將會使編譯器把...int xy = 10;
...
cout << concatenate( x, y ) << endl;解釋為
cout << xy << endl;理所當然,將會在標準輸出處顯示'10'.
語法:
__line____file__
__date__
__time__
_cplusplus
__stdc__
下列引數在不同的編譯器可能會有所不同, 但是一般是可用的:
c 預處理和預處理命令
預處理發生在編譯之前,預處理輸出的是乙個單一的檔案,這個檔案被送到編譯器,進行編譯。每條預處理命令都控制預處理器的行為。每條預處理命令佔據一行,有以下的格式 character 預處理命令 one of define,undef,include,if,ifdef,ifndef,else,elif,e...
C 預處理命令
c 提供的預處理功能 巨集定義 檔案包含和條件編譯 分別由巨集定義命令 檔案包含命令和條件編譯命令三種預處理命令來實現。預處理命令 格 式 預處理命令 末尾不加分號 作用域 從定義點到程式結束 說 明 預處理命令獨佔一行,位置任意 巨集定義命令 格 式 define 巨集名 形參 巨集體 undef...
C 預處理命令
預處理就是對原始檔進行編譯前,先對預處理部分進行處理,然後對處理後的 進行編譯。c 提供了豐富的預處理指令,主要包括如下幾種 define error if else elif endif ifdef ifndef undef line和 pragma。每個預處理指令均帶有符號 簡單來說,上面的這些...