C语言中的#与##

#符号把一个符号直接转换为字符串,例如:
#define STRING(x) #x
const char *str = STRING( test_string ); str的内容就是"test_string",也就是说#会把其后的符号
直接加上双引号。
##符号会连接两个符号,从而产生新的符号(词法层次),例如:
#define SIGN( x ) x##1
int SIGN( 1 ); 宏被展开后将成为:x1
[参考链接]((71条消息) (转)C/C++ 宏详解_猫已经找不回了的博客-CSDN博客)

本文作者:心比天高xzh

本文链接:https://www.cnblogs.com/xzh-personal-issue/p/17202459.html

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   心比天高xzh  阅读(52)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起