#define _STR(x) _VAL(x) #define _VAL(x) #x 这个时候为什么不直接定义#define _STR(x) #x呢?
答案:1 悬赏:80
解决时间 2021-04-28 00:26
- 提问者网友:騷女、無惡不作
- 2021-04-27 18:22
看着好像多余一样
最佳答案
- 二级知识专家网友:走,耍流氓去
- 2021-04-27 19:32
因为x可以是个宏,一次替换时x不会被展开,会被直接转换为字符串。比如《C标准库》里的例子,这样定义之后可以写_STR(__LINE__),如果_VAL(x)会直接得到"__LINE__"而不会是当前的行数。虽然晚了点,希望能帮到你
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯