前端之家收集整理的这篇文章主要介绍了
c-preprocessor – 为什么预处理器会占用空间?,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想用预处理器
评论一行:
#define open /##*
#define close */
main()
{
open commented line close
}
当我做$gcc -E filename.c我期待
/* commented line */
但我得到了
/ * commented line */
这样编译器就会显示错误
为什么会给出不必要的空间?
预处理器以C编译器可以理解的形式运行并
生成代码.它只处理你的
代码一次,所以即使你可以使用#define
生成/ *,编译器也会看到/ *并给你一个
错误,因为它不是有效的C
代码(它是一个预处理指令).
这似乎不是一件好事.
原文链接:https://www.f2er.com/c/119594.html