首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> C >> C 語言基礎

C語言基礎教程(四)預處理指令詳解:#define、#include、條件編譯等

     編輯:C 語言基礎

常用預處理指令

ANSI 標準規定的預處理指令均以 # 開頭。本節介紹常用指令。

1. #define 宏定義

#define 宏名 替換字符串(或數值)

編譯時將宏名替換為定義內容。慣例用大寫,放在程序開頭,無分號。

#define TRUE 1
#define FALSE 0
#define MAX(x,y) ((x>y)?x:y)
#define MIN(x,y) ((x<y)?x:y)

帶參數宏調用時實參替換形參。

2. #error 錯誤指令

#error 出錯信息

編譯遇到此指令即停止,顯示 Fatal: filename linename error directive,用於調試。

3. #include 文件包含

#include <stdio.h>        // 系統頭文件,按環境路徑查找
#include "myheader.h"     // 用戶文件,先按當前目錄查找

可嵌入任意文件,甚至在函數體中:

main() {
    #include "help.c"   // help.c 內容: printf("Glad to meet you here!");
}

4. 條件編譯:#if、#else、#endif

#define MAX 200
main() {
    #if MAX > 999
        printf("compiled for bigger\n");
    #else
        printf("compiled for small\n");
    #endif
}

若常數表達式為真編譯 #if-#else 間代碼,否則編譯 #else-#endif 間代碼。

5. #undef 取消宏定義

#define TRUE 1
...
#undef TRUE

使宏定義僅在需要的程序段生效。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved