除了“++i + ++i”这种未定义行为,你还知道哪种让你印象最深刻的“谭浩强式”编程案例?

发布时间:
2025-04-27 11:03
阅读量:
1

谭的代码风格,大括号缩进两格,里面的内容再缩进两格。

类似这样:

for (i = 0; i < 2; ++i) { f(i); }

大括号一定在一行的开头,但是大括号里的第一行内容可以和大括号放在同一行:

for (i = 0; i < 2; ++i) { f(i); g(i); }

我原本讨厌这种风格,后来才知道这模仿的是以前很流行的Whitesmith风格。这种风格可以明显地看出语句块的层级结构,同时和K&R风格一样省空间。GNU的源码用的也是Whitesmith风格的变种。

但是这种风格现在不流行也是有理由的……

END