C语言编码规范:如何在一行代码中保持小于80个字符的限制

4

我找不到很多关于C语言如何拆分行的建议/风格指南,以便每行不超过80个字符。

我唯一能找到的是PEP 7,这是主要Python实现(CPython)的样式指南。

是否存在包含换行建议的全面的C语言样式指南链接?

如果没有,至少有一些好的个人建议吗?

P.S.:对于那些名字非常长并且永远不会结束的变量,你怎么办(除了缩短)?您将其放在左边缘还是让其溢出?


我让我的代码行短一些,因为这样对我的眼睛更加友好。但也不能太短 :) - Skurmedel
4个回答

5

3
你可以查看GNU编码标准,它涵盖了不仅是编码风格的内容,但仍然非常有趣。

1

每行80个字符的“规则”已经过时。

http://richarddingwall.name/2008/05/31/is-the-80-character-line-limit-still-relevant/

http://en.wikipedia.org/wiki/Characters_per_line

http://news.ycombinator.com/item?id=180949

我们不再经常使用穿孔卡片。我们有巨大的显示屏,分辨率很高,随着时间的推移只会变得更大(显然,手持设备、平板电脑和网络本是现代计算的重要组成部分,但我认为我们大多数人都在桌面电脑和笔记本电脑上编程,即使是笔记本电脑这些天也有大屏幕)。

以下是我认为我们应该考虑的规则:

一行代码只做一件事情。

一行代码写成一行代码

换句话说,尽可能让每一行代码都尽可能简单,并且不要将一个逻辑行拆分成几个物理行。规则的第一部分有助于确保合理的简洁性,以便遵守第二部分不会造成负担。

有些人认为某些编程语言鼓励复杂的“一行代码”。Perl就是一个例子,被一些人认为是一种“写一次,永不读取”的语言,但你知道吗?如果你不写混淆的Perl代码,相反,每行只做一件事情,那么Perl代码可以像其他任何语言一样易于管理...好吧,也许除了APL ;)

除了复杂的一行代码之外,我看到遵循某些人工字符限制的另一个缺点是缩短标识符以符合规则。描述性标识符通常比缩写和首字母缩略词更清晰。清晰的标识符使我们更接近文学编程

或许我听过的最好的保持80个字符限制或其他值的“现代”论点是“并排比较”代码。并排比较对于比较同一源文件的不同版本非常有用,例如源代码版本控制系统合并操作。就我个人而言,我注意到如果我遵守我建议的规则,我的大部分代码行都足够短,以至于在现代显示器上并排查看两个源文件(甚至三个源文件进行三向合并)时可以完整地查看它们。当然,其中一些会超出视口。在这种情况下,如果需要查看更多内容,我只需滚动一点即可。此外,现代比较工具可以轻松告诉您哪些行不同,因此您知道应该查看哪些行。如果您的工具告诉您没有滚动的理由,那么就没有滚动的理由。


6
避免排长队的最好理由是长队更难阅读。 - user25148

0

我认为每行80个字符的旧建议来自于显示器为80x25的时代,现在128或更多应该没问题。


7
我不同意;请记住,代码很少是占据水平空间的唯一因素;顺便说一下,每行80个字符正好适合我在笔记本上并排放置2个编辑窗口,所以我会坚持使用它... - Christoph
@Christoph 80个字符?你不能调整字体大小吗?我为你感到难过。 - AndersK
1
@AndersK:祝您新年快乐;当然我可以调整字体大小,但我不会这样做,因为可读性会受到影响。 - Christoph
@Christoph 这完全是关于口味的问题,让我们同意各自的看法吧 / 新年快乐! - AndersK

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接