c c++ 宏定义中#, ##, #@的含义

#表示:对应变量字符串化,即加双引号  

连接符#@:它将单字符标记符变换为单字符,即加单引号

##表示:把宏参数名与宏定义代码序列中的标识符连接在一起,形成一个新的标识符

例如:

#define A(x)  #@x      //此处x仅限于单个字符

则A(m) 字面量表示 'm',     而A(abc),则无效

 

#define B(x)  #x

则B(m) 字面量表示 "m", B(abcd123)  字面量表示 "abcd123"

 

#define C(x)  Class##x

C(List) 字面量表示 ClassList

原文链接: https://www.cnblogs.com/endenvor/p/9774354.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

    c c++ 宏定义中#, ##, #@的含义

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/282951

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月15日 上午6:45
下一篇 2023年2月15日 上午6:45

相关推荐