C/C++中#,##,__FILE__,__LINE__等的用法
阿新 • • 發佈:2018-12-10
#include <stdio.h>
#define CAT(N) X ## N //## 在巨集定義中將兩個字元連線起來,構成一個新的識別符號 #define PRINTF_XN(n) printf("X" # n "=%d\n",X ## n); //# 將對應變數字串化
int main() { int i; for(i=0; i<10;i++){ int CAT(1) = 2; PRINTF_XN(1); //打印出X1=2 }
printf("當前原始碼函式名:__FUNCTION__==%s\n",__FUNCTION__); printf("當前原始碼行號:__LINE__==%d\n",__LINE__); printf("當前原始碼檔名:__FILE__==%s\n",__FILE__); printf("當前編譯日期〔注意和當前系統日期區別開來〕:__DATE__==%s\n",__DATE__); printf("當前編譯時間〔注意和當前系統日期區別開來〕:__TIME__==%s\n",__TIME__); printf("當前系統時間戳:__TIMESTAMP__==%s\n",__TIMESTAMP__); printf("當要求程式嚴格遵循ANSIC標準時該識別符號被賦值為1:__STDC__==%d\n",__STDC__); printf("當用C++編譯程式編譯時,識別符號__cplusplus就會被定義:__cplusplus==%d\n",__cplusplus);
return 0; }