在代码文件末尾留下额外空行的原因是什么?

Pop*_*ops 13 language-agnostic history coding-style

默认情况下,Eclipse和MyEclipse在最后一个右括号后创建一个额外空行的新Java文件.我认为CodeWarrior在几年前也做了同样的事情,并且有些人通过意图或懒惰在代码中留下了这样的空白.所以,这似乎至少是一种适度普遍的行为.

作为一名前人类语言编辑 - 主要是复制编辑报纸 - 我发现那些线条看起来像是邋or或意外,我想不出将它们留在源文件中的理由.我知道它们不会影响C风格的语言编译,包括Java.拥有这些线路是否有好处,如果有,那么它们是什么?

Jus*_*ith 11

它是历史性的,与用于文本处理的命令行实用程序中的常见错误有关.Unix系统上有许多程序用于处理文本,并且大多数程序都是逐行工作的.当最后一行没有以换行符结尾时,可能有或没有任何常见的命令行工具行为不当,但这种现象在历史上已经足够普遍,以至于其他工具开始警告这种情况.

最后我检查过vim实际上无法保存一个不以换行结束的文件,无论你是否把它放在那里都要添加一个.


Gab*_*bák 6

AFAIK,使用换行符结束每一行是一种很好的做法,因为在解析代码时,可以使用一个简单的函数来读取它,该函数将根据这些换行符将文件拆分为行。如果没有空行,因此最后一行以换行符结尾,您将丢失该行上的所有字符。