#define f(g,g2) g##g2
main()
{
int var12=100;
printf("%d",f(var,12));
}上面的程序通过连接var和12在c中打印100。g##g2是如何工作的??
发布于 2009-11-29 03:23:50
##只是将令牌粘贴在一起。它是一个预处理器指令。
例如。
#define PASTE(a,b) a##b
int i=PASTE(1,2); /* int i=12; */发布于 2009-11-29 03:24:14
##是用于连接前后内容的预处理器“命令”。
发布于 2009-11-29 03:31:26
因此,经过预处理后,它将如下所示:
main()
{
int var12=100;
printf("%d",var12);
}https://stackoverflow.com/questions/1813491
复制相似问题