【发布时间】:2017-10-03 11:08:54
【问题描述】:
我问的是这两种实现之间的最佳实践:
for ( int i = 0; i < 5; i++ )
for ( int j = 0; j < 5; j++ )
...some code here...
...other code...
for ( int i = 0; i < 5; i++ )
for ( int j = 0; j < 5; j++ )
...some code here...
或者这个:
beginning of function/main
int i,j;
...some code...
for ( i = 0; i < 5; i++ )
for ( j = 0; j < 5; j++ )
...some code here...
...other code...
for ( i = 0; i < 5; i++ )
for ( j = 0; j < 5; j++ )
...some code here...
换句话说是不是更好:
- 一次性声明计数器循环并在每个循环中定义它们
- 还是每次都声明?
谢谢
编辑: 我的问题是: 对 2 个变量执行 N 个声明(和定义)更好还是 2 个声明和 N 个定义更好?
编辑2: 好的,现在我明白了。我不知道声明只影响编译而不影响执行(我看到了 C99 编译源文件的汇编语言)。所以没有区别,Lundin 的回答显示了使用的标准。
【问题讨论】:
-
IMO 变量应声明为最接近其预期用途。您会惊讶于这两种样式生成的代码有多么不同。哪个更好纯属见仁见智。
-
OT:所谓的“声明”变量,实际上是定义它。您所说的“定义”实际上是初始化或分配给变量。
-
@StoryTeller:我认为这是事实,而不是意见。还是“在我的教条意见中”? ;-)
-
@Bathsheba - 生成的代码是事实 :) 我在午餐时与我公司的资深程序员进行了许多讨论,非常固执己见(男孩,我听到了为什么 C90 方式更好...)。
-
投票重新开放。与不使用任何换行符的情况下编写 C 代码相比,这不再是基于意见的了。
标签: c for-loop declaration c99 definition