这里的代码中的#define指令中的##是什么意思[duplicate]

fkaflof6  于 2022-12-22  发布在  其他
关注(0)|答案(2)|浏览(174)
    • 此问题在此处已有答案**:

What does ## in a #define mean?(6个答案)
3天前关闭。
请告诉我答案和解释:

#define f(g,h) g##h

main(){
  printf("%d",f(100,10));
}
fnx2tebb

fnx2tebb1#

##用于连接##之前的内容和之后的内容。它用于连接。
有关详细信息,请查看reference
替换列表中任意两个连续标识符之间的##操作符对这两个标识符(不是首先宏展开的)执行参数替换,然后将结果连接起来。此操作称为“连接”或“标记粘贴”。

ql3eal8s

ql3eal8s2#

下面是一个有用的副本-What does ## in a #define mean?

    • 示例**

//Definition
  #define ArgArg(x, y)     x##y

  //Example
  ArgArg(lady, bug) -> "ladybug"

相关问题