CSharp C 語言 C 中的「預處理指令」

2021-10-09 04:24:55 字數 1333 閱讀 4448

源**指定了程式的定義,預處理指令(preprocessor directive)指示編譯器如何處理源**。

例如,在某些情況下,我們可能希望編譯器忽略一部分**,而在其他情況下,我們可能希望**被編譯。預處理指令給了我們這樣的選項。

cc++中有實際的預處理階段,此時預處理程式遍歷源**並且為之後的編譯階段準備文字輸出流,在c#中沒有實際的預處理程式。「預處理」 指令由編譯器來處理,而這個術語保留了下來

允許行尾注釋

在預處理指令所在的行不允許分隔符注釋

//                結尾沒有分號

#define premiumversion

// 正確

// 前面的空格

#define budgetversion

// 正確

// 中間有空格

# define mediumversion

// 正確

// 不允許分隔符注釋

#define premiumversion

/* all bells & whistles */

// 行尾注釋可以

#define budgetversion

// stripped-down version

指 令

含義概要

#define identifler

定義編譯符

#undef identifier

取消定義編譯符

#if expression

如果表示式是 true,編譯下面的片段

#elif expression

如果表示式是 true,編譯下面的片段

#else

如果之前的 #if 或 #elif 表示式是 false,編譯下面的片段

#endif

標記為乙個 #if 結構的結束

#region name

標記一段**的開始,沒有編譯效果

#endregion name

標記一段**的結束,沒有編譯效果

#warning message

顯示編譯時的警告訊息

#error message

顯示編譯時的錯誤訊息

#line indicator

修改在編譯器訊息中顯示的行數

#pragma text

指定有關程式上下文的資訊

C語言預處理

c語言中編譯預處理的三種形式的命令 巨集定義,檔案包含,條件編譯命令。1 巨集定義主要是 define,undef 如下 define pi 3.1415926 不帶引數的巨集定義 define max a,b a b?a b 帶引數的巨集定義 說明 巨集定義在c語言與c 語言中是相通的。下面舉例說...

C語言預處理

預處理 系統自動自動呼叫預處理程式對程式中 號開頭的預處理部分進行處理,處理完畢後可以進城源程式的編譯階段。預定義 一些預定義符號 常用於除錯 file 正在預編譯的源檔名 line 當前行號 只有這個是整數常量,其他是字串常量 function 當前所在函式名 date 當前日期 time 當前時...

c語言預處理

預處理可以包含 1 巨集定義指令 2 標頭檔案包括指令 3 條件編譯指令 4 編譯程式可以識別的特殊符號 巨集定義 define undef 檔案包含 include 條件編譯 if ifdef else elif endif等 其他 line error program等 注意事項 1 在c語言中...