C语言令牌粘贴

示例

令牌粘贴允许将两个宏参数粘合在一起。例如,front##backyields frontback。一个著名的例子是Win32的<TCHAR.H>标头。在标准C中,可以编写L"string"声明宽字符串。但是,Windows API仅允许通过#defineing在宽字符串和窄字符串之间进行转换UNICODE。为了实现字符串文字,请TCHAR.H使用此

#ifdef UNICODE
#define TEXT(x) L##x
#endif

每当用户写入TEXT("hello, world"),并且定义了UNICODE时,C预处理器就会连接起来,L并使用宏参数。L与"hello, world"给定串联L"hello, world"。