c-preprocessor – 为什么预处理器会占用空间?

前端之家收集整理的这篇文章主要介绍了c-preprocessor – 为什么预处理器会占用空间?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想用预处理器评论一行:
#define open /##*

#define close */

main()
{
        open commented line close
}

当我做$gcc -E filename.c我期待

/* commented line */

但我得到了

/ * commented line */

这样编译器就会显示错误

为什么会给出不必要的空间?

解决方法

预处理器以C编译器可以理解的形式运行并生成代码.它只处理你的代码一次,所以即使你可以使用#define生成/ *,编译器也会看到/ *并给你一个错误,因为它不是有效的C代码(它是一个预处理指令).

这似乎不是一件好事.

猜你在找的C&C++相关文章