預處理過程掃描源代碼,對其進行初步的轉換,產生新的源代碼提供給編譯器。可見預處理過程先於編譯器對源代碼進行處理。編譯器
預處理指令是以#開頭的代碼行,#後是指令關鍵字,在關鍵字和#號之間容許存在任意個數的空白字符。正行語句構成了一條預處理指令,該指令醬紫啊編譯器進行編譯以前對源代碼作某些轉換,下面是一些經常使用的預處理指令,編譯
# 空指令,沒有任何效果error
#include 包含一個源代碼文件di
#define 定義宏文件
#undef 取消定義宏源代碼
#if 若是條件爲真,則編譯下面的代碼字符
#elif 若是前面的#if不爲真,則編譯下面的代碼錯誤
#endif 結束一個#if...#elif條件編譯塊
#ifdef 若是已經定義了某個宏,則編譯下面的代碼
#ifndef 若是沒有定義某個宏,則編譯下面的代碼
#error 中止編譯並顯示錯誤信息