程序代码中的缩进与大括号风格

  • K&R style

Named after Kernighan & Ritchie, because the examples in K&R are formatted this way. Also called `kernel style’ because the Unix kernel is written in it, and the `One True Brace Style’ (abbrev. 1TBS) by its partisans. In C code, the body is typically indented by eight spaces (or one tab) per level, as shown here. Four spaces are occasionally seen in C, but in C++ and Java four tends to be the rule
rather than the exception.

1
2
3
if�()�{
��������
}
  • Allman style

Named for Eric Allman, a Berkeley hacker who wrote a lot of the BSD utilities in it (it is sometimes called `BSD style’). Resembles normal indent style in Pascal and Algol. It is the only style other than K&R in widespread use among Java programmers. Basic indent per level shown here is eight spaces, but four (or sometimes three) spaces are generally preferred by C++ and Java programmers.

1
2
3
4
if�()
{
��������
}
  • Whitesmiths style

Popularized by the examples that came with Whitesmiths C, an early commercial C compiler. Basic indent per level shown here is eight spaces, but four spaces are occasionally seen.

1
2
3
4
if�()
��������{
��������
��������}
  • GNU style

Used throughout GNU EMACS and the Free Software Foundation code, and just about nowhere else. Indents are always four spaces per level, with `{‘ and `’ halfway between the outer and inner indent levels.

1
2
3
4
if�()
��{
����
��}
  • 参考资料

程序语言中花括号的风格列举
indent style