next up previous contents
Next: 預處理運算子 Up: C 預處理器 Previous: 概論   Contents   DYWANG_HOME

預定義巨集

  1. ANSI 定義的巨集
    預定義巨集 動作描述
    __DATE__ 目前日期,格式 "MMM DD YYYY" 。
    __TIME__ 目前日時,格式 "HH:MM:SS" 。
    __FILE__ 目前檔案名稱。
    __LINE__ 目前行數。
    __STDC__ 如果編譯器以 ANSI 標準編譯,則為 1。
  2. 範例:輸出巨集
    [dywang@dyw219 zzz]$ vim preprocess1.c
    [dywang@dyw219 zzz]$ cat preprocess1.c
    #include <stdio.h>
    
    main() {
    	printf("File :%s\n", __FILE__ );
    	printf("Date :%s\n", __DATE__ );
    	printf("Time :%s\n", __TIME__ );
    	printf("Line :%d\n", __LINE__ );
    	printf("ANSI :%d\n", __STDC__ );
    }
    
  3. 編譯
    [dywang@dyw219 zzz]$ gcc -o preprocess1 preprocess1.c
    
  4. 執行結果
    [dywang@dyw219 zzz]$ ./preprocess1
    File :preprocess1.c
    Date :Jul 27 2019
    Time :10:08:40
    Line :7
    ANSI :1
    



De-Yu Wang 2021-01-11