为什么C文件以/ * [] * /结尾?

时间:2013-10-22 13:57:02

标签: c coding-style

我正在查看一些专有的源代码:使用库的示例程序。

代码是用C和C ++编写的,使用make for build system。

对于源文件,每个文件以注释掉的[]/*[]*/结束,对于makefile文件以#[]#结束。这可能是什么原因?

使用扩展名为GCC编译代码。

2 个答案:

答案 0 :(得分:6)

它很可能是某种自动扩展的占位符。

通常像macrodef(或其中一个源代码控制过滤器)会扩展这些项目以包含一些相关文本。由于通常只有受注释保护的括号会扩展,所以注释将保留在原位,从而在编译时保护源代码免受实际扩展项目的影响。

但是,您目前正在查看的内容可能是包含所有内部扩展的外部括号。这可能是在从一个源代码控制系统迁移到另一个源代码控制系统的过程中完成的。虽然这种想法具有很强的推测性,但似乎并没有花费精力迁移扩展项目,而只是去除它们。

答案 1 :(得分:0)

在我以前工作的一个项目中,每个C源文件最后都包含注释:

/* End of file */

原因是gcc警告

Warning : No new line at end of file 

所以我们有了这个评论(后面有一个新行),以确保人们在评论后不写:)