C++ for循环的三种简写形式
for循环的三种简写形式
个人认为,C++中for循环的三种简写形式可以用于了解,这样将来阅读C++代码的时候遇到这类简写的形式就不会感到陌生,如果是在实际的程序开发中,能不用for循环简写的形式就不要用,因为个人更倾向于能使用局部变量的地方就使用局部变量(for循环的简写可能将控制循环的变量声明定义在for循环之外),这样可以避免全局变量在不经意间被修改。下面来简单介绍一下C++ for循环的三种简写形式(可以变通很多种,这里仅介绍三种)。
循环控制变量在for循环之外的简写形式
如果循环控制变量(如下面的变量i)在for循环内部定义,那么for循环结束之后,该变量也将被销毁——即在for循环之外是访问不到该变量的,如下代码,如果将注释符号去除掉,那么在编译阶段,便会提示变量j是未定义的:
#include <iostream>
using namespace std;
int main(){
int i = 0;
for(;i<3;i++){
cout << i << std::endl;
}
cout << i << std::endl;
// for(int j=0;j<3;j++){
// cout << j << std::endl;
// }
// cout << j << std::endl;
return 0;
}
i++在for循环代码块内的简写形式
更新循环控制变量的机制(比如i++)也可以在for循环的代码块内设置,比如:
#include <iostream>
using namespace std;
int main(){
int i = 0;
for(;i<3;){
cout << i << std::endl;
i++;
}
return 0;
}
条件判断在for循环代码块内的简写形式
控制条件循环的条件判断表达式(比如i<3)也可以在for循环的代码块内设置,但这个要结合C++的条件判断和break语句,比如:
#include <iostream>
using namespace std;
int main(){
int i = 0;
for( ; ; ){
if(i>3){
break;
}else{
cout << i << std::endl;
i++;
}
}
return 0;
}
免责声明:内容仅供参考,不保证正确性!