.LOG
@@begin@@
##预处理运算符
#include <iostream>
using namespace std;
#define cat(x,y) x##y
#define xcat(x,y) cat(x,y)
#define WIDEN(x) L ## x
#define WIDEN2(x) WIDEN(x)
//http://www.pythonschool.com
int main()
{
int a = 1;
int ab = 2;
int abc = 3;
cout << cat(a,b) << endl; //一次替换正常输出
//cout << cat(cat(a,b),c) << endl; //error 宏名只替换一次从最外层开始
cout << xcat(cat(a,b),c) << endl; //选替换xcat,再替换cat可以正常输出
cout << L"Hello World!" << endl; //输出字符串的地址
cout << WIDEN2(__FILE__) << endl; //由于__FILE__也是预定义宏,所以必须先替换一次,总共要替换二次
return 0;
}
@@end@@
http://www.pythonschool.com/
##预处理运算符
最新推荐文章于 2024-01-18 10:13:01 发布