先來看兩段代碼:
[cpp]
// main.cpp
#include <stdio.h>
#define MZ_PRINT(n) printf("x"#n"=%d", x##n);
int main()
{
int x1 = 1;
MZ_PRINT(1);
return 0;
}
這段代碼在經過g++ -E預編譯以後:
[cpp]
... // 頭文件相關內容
int main()
{
int x1 = 1;
printf("x""1""=%d", x1);;
return 0;
}
未完待續。。。
等查閱相關文檔後再解釋。