一般用法
通常情况我们一般把宏#参数变为一个字符串,形如:123--->”123”,当然这种转换方法很多譬如:itoa,sprintf等函数都可以完成,但是如果频繁的调用这些系统调用的话,会造成较大的系统开销,使用宏#不失为一种高效便捷的手段,
用##把两个宏参数贴合在一起.
简单的方法。
| #include<stdio.h> #define STR(s) #s #define CONS(x,y) (int)(x##e##y) int main() { |
本文介绍了C/C++宏中的'#'和'##'两个特殊操作符的用法。'#'用于将宏参数转换为字符串常量,而'##'则用于拼接宏参数。文中通过具体的应用特例,如合并匿名变量名、填充结构、记录文件名等,详细阐述了这两个操作符的高效和便捷之处。
通常情况我们一般把宏#参数变为一个字符串,形如:123--->”123”,当然这种转换方法很多譬如:itoa,sprintf等函数都可以完成,但是如果频繁的调用这些系统调用的话,会造成较大的系统开销,使用宏#不失为一种高效便捷的手段,
用##把两个宏参数贴合在一起.
简单的方法。
| #include<stdio.h> #define STR(s) #s #define CONS(x,y) (int)(x##e##y) int main() { |
931

被折叠的 条评论
为什么被折叠?