程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> 關於C++ >> C/C++預編譯指令

C/C++預編譯指令

編輯:關於C++

編譯程序時,只要遇到 #error 就會跳出一個編譯錯誤,既然是編譯錯誤,要它干嘛呢?其目的就是保證程序是按照你所設想的那樣進行編譯的。

下面舉個例子:
程序中往往有很多的預處理指令
#ifdef XXX
...
#else

#endif

當程序比較大時,往往有些宏定義是在外部指定的(如makefile),或是在系統頭文件中指定的,當你不太確定當前是否定義了 XXX 時,就可以改成如下這樣進行編譯:

#ifdef XXX
...
#error "XXX has been defined"

#else

#endif

這樣,如果編譯時出現錯誤,輸出了XXX has been defined,表明宏XXX已經被定義了。

   預編譯指令             用途
         #           空指令,無任何效果
         #include    包含一個源代碼文件
         #define     定義宏
         #undef      取消已定義的宏
         #if         如果給定條件為真,則編譯下面代碼
         #ifdef      如果宏已經定義,則編譯下面代碼
         #ifndef     如果宏沒有定義,則編譯下面代碼
         #elif       如果前面的#if給定條件不為真,當前條件為真,則編譯下面代碼
         #endif      結束一個#if……#else條件編譯塊
         #error      停止編譯並顯示錯誤信息
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved