9

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

代码是用 C 和 C++ 编写的,使用 make 构建系统。

每个文件都以注释掉的结尾[]/*[]*/源文件和#[]#生成文件。这可能是什么原因?

该代码是使用 GCC 为 ARM 编译的,使用扩展。

4

2 回答 2

6

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

通常,诸如 macrodef(或源代码控制过滤器之一)之类的东西会扩展此类项目以包含一些相关文本。由于通常只有受注释保护的括号会扩展,因此注释将保留在原处,从而在编译时保护源代码免受实际扩展项的影响。

但是,您当前正在查看的可能是外部包含括号,其中所有内部扩展都已删除。这可能是在从一个源代码控制系统到另一个源代码控制系统的代码迁移期间完成的。尽管这样的想法是高度推测性的,但他们似乎并没有努力迁移扩展项目,而不仅仅是移除它们。

于 2013-10-22T14:21:32.863 回答
0

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

/* End of file */

原因是 gcc 警告

Warning : No new line at end of file 

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

于 2013-10-22T14:41:49.727 回答