我的问题是,如果我在循环外部声明一个变量并每次在循环内部重新初始化,或者在循环内部声明并初始化,这有什么关系吗?那么基本上这两种语法(性能、标准等)之间有什么区别吗?
方法1
int a,count=0;
while(count<10)
a=0;
方法2
int count=0;
while(count<10)
int a=0;
请假设这只是一个更大程序的一部分,并且循环内的主体要求变量a
每次都具有0
值。那么,这两种方法的执行时间会有什么差异吗?
最佳答案
是的,这确实很重要。第二种情况
int count=0;
while(count<10)
int a=0;
a
无法在 while 循环之外引用。它具有 block 作用域;程序文本中可以引用变量的部分。
另一件事是Jonathan Leffler在他的answer中指出这两个循环都是无限循环。其次,如果没有 {}
(C 语言),最重要的第二个代码段将无法编译,因为变量定义/声明不是语句,不能作为循环体出现。
int count =0;
while(count++ < 10)
{
int a=0;
}
关于c - 如果我在循环内声明变量有关系吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20720264/