在C中##是什么意思?
我在查看berkeley实验室检查点/重启的源代码时发现了以下预处理宏定义:在C中##是什么意思?,c,linux,gcc,c-preprocessor,C,Linux,Gcc,C Preprocessor,我在查看berkeley实验室检查点/重启的源代码时发现了以下预处理宏定义: #define io_wrap(_op,_ctx,_file,_buf,_count) \ cr_##_op((_ctx)->req->errbuf,(_file),(_buf),(_count)) 知道这到底是什么意思吗 我在blcr-0.8.5/vmadump4/vmadump.h中找到了这个 谢谢大家! ##用于C预处理器中的串联 这个结果\u op((_ctx)->req->e
#define io_wrap(_op,_ctx,_file,_buf,_count) \
cr_##_op((_ctx)->req->errbuf,(_file),(_buf),(_count))
知道这到底是什么意思吗
我在blcr-0.8.5/vmadump4/vmadump.h中找到了这个
谢谢大家! ##
用于C预处理器中的串联
这个结果\u op((_ctx)->req->errbuf,(_file),(_buf),(_count))
与cr
\35;
连接在C预处理器中
这个结果
\u op((\u ctx)->req->errbuf,(\u file),(\u buf),(\u count))
与cr
连接,它是令牌连接。参见GCC手册:
有关它的一些基本细节,请参见这个问题:它是令牌连接。参见GCC手册:
关于它的一些基本细节,请参见以下问题:“这东西到底是什么意思?”lol:DIt的意思是将
cr
与\u op()
的值连接起来,而不添加空格,如果它们之间用空格分隔,则会添加空格。“这东西到底是什么意思?”lol:DIt意味着将cr
与\u op()
的值连接起来,而不添加空格,如果空格分隔,则会添加空格。