在循环中定义一个 var
defining a var in loop
在循环内部或外部定义变量有什么区别?
例如:
int a;
for(int i=1; i<11; i++){
a = rand()%10;
printf("%d\n",a);
}
先定义a
,然后循环使用。
但在 :
for(int i=1; i<11; i++){
int a = rand()%10;
printf("%d\n",a);
}
这里a
是在循环中定义的。
有什么区别,哪个比较慢?
区别在于变量的范围。 a 在第一种情况下循环结束后存在,但在第二种情况下不存在。
在循环内部或外部定义变量有什么区别? 例如:
int a;
for(int i=1; i<11; i++){
a = rand()%10;
printf("%d\n",a);
}
先定义a
,然后循环使用。
但在 :
for(int i=1; i<11; i++){
int a = rand()%10;
printf("%d\n",a);
}
这里a
是在循环中定义的。
有什么区别,哪个比较慢?
区别在于变量的范围。 a 在第一种情况下循环结束后存在,但在第二种情况下不存在。