C语言中“#“和“##“的区别及用法
Posted 沉默的小宇宙
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言中“#“和“##“的区别及用法相关的知识,希望对你有一定的参考价值。
#:把宏参数变为一个字符串
##:把两个宏参数连接在一起
举例:
#include <stdio>
#define __STRING(s) #s
#define __LINK(a,b) int(a##b)
int main()
{
printf(__STRING(1234sfasdf)); // 输出字符串"1234sfasdf"
printf("%d\\n", __LINK(2,3)); // 输出:23
return 0;
}
注意事项:宏最好不要作为参数传递给宏。
以上是关于C语言中“#“和“##“的区别及用法的主要内容,如果未能解决你的问题,请参考以下文章
c语言中gets ,getschar 和fgets 的用法及三者之间的差别