如有轉載請注明出處
編譯預處理 -- 帶參數的宏定義
前面為輸出檔案,後面為輸入檔案
gcc -E -o test.i test.c
gcc -o test test.i
test.c
test.i
取消宏定義
#undef 宏名
條件編譯的三種形式
第三種
#if 常量表達式
源碼1.....
#else // 此部分可選
源碼2...
#endif
#----表示ABC(a) 即為 a這個字元串
##的用法
A_B(print_, menu)
等價為 print_menu()
__DATE__ 進行預處理的日期,注意是兩個下劃線喔,(“Mmm dd yyyy”形式的字元串文字)
__FILE__ 代表目前源碼檔案名的字元串文字
__LINE__ 代表目前源代碼中的行号的整數常量
__TIME__源碼檔案的編譯時間,格式為: "hh: mm: ss"
__func__ 目前所在函數名
歡迎交流
新浪部落格:http://blog.sina.com.cn/u/2049150530
csdn部落格:http://blog.csdn.net/u011749143
部落格園:http://www.cnblogs.com/sky-heaven/
知乎:http://www.zhihu.com/people/zhang-bing-hua