我正在查看伯克利实验室检查点/重启的源代码,并找到了这个预处理宏定义:
#define io_wrap(_op,_ctx,_file,_buf,_count) \
cr_##_op((_ctx)->req->errbuf,(_file),(_buf),(_count))
知道这件事到底是什么意思吗?
我在blcr-0.8.5 / vmadump4 / vmadump.h
中找到了这个谢谢!
答案 0 :(得分:4)
这是令牌连接。请参阅GCC手册:http://gcc.gnu.org/onlinedocs/cpp/Concatenation.html
对于其中的一些细节,请参阅此问题:How to concatenate twice with the C preprocessor and expand a macro as in "arg ## _ ## MACRO"?
答案 1 :(得分:2)
##
用于C预处理器中的连接。
此结果_op((_ctx)->req->errbuf,(_file),(_buf),(_count))
与cr_