# ##

#define xx(a) const char * _cstr##a = "xxxx";

#define yy(a) #a

int _tmain(int argc, _TCHAR* argv[])
{
xx(bbb);
std::cout<<_cstrbbb<<std::endl;  // ---> xxxx

std::cout<<yy(fuck)<<std::endl;  // ---> fuck
std::cout<<yy(ggggggg)<<std::endl;  // ---> ggggggg
std::cout<<yy("hhhhhhhhhh\n\r\t")<<std::endl;  // ---> "hhhhhhhhhh\n\r\t"

std::cout<<yy(hhhhhhhhhh\n\r\t)<<std::endl;  // ---> hhhhhhhhhh然后三个换行

return 0;
}

 

##一般在宏中构造一个变量名

#用于产生一个字符串,跟在#后面的字符会作为字符串对待

posted @ 2013-08-06 11:56  avexer  阅读(204)  评论(0编辑  收藏  举报