概述
while语句:
while的条件部分可以是一个表达式或者一个带初始化的变量声明
书中原话:定义在while条件部分或者while循环体内的变量每次迭代都经历从创建到销毁的过程
如下面的代码,程序会输出10个2
int cc = 1; while (int i = 1) { cc++; i++; std::cout << i << std::endl; if (cc>10) break; } //std::cout<<i<<std::endl; //这句出错,while之外i不可见
在循环体中不允许重新声明或初始化条件语句中的声明。
cin是一个流对象,而>>运算符返回左边的流对象,也就是说cin>>val返回cin,于是while(cin)等同于while(cin>>val),也就是流是否读取成功
while(cin) =====> while(!cin.fail()) //while the stream is OK
for语句:
for语句其实就相当于while语句的变形:
for(init-statement ; condition ; expression)
statement
相当于
{ //此处加花括号是因为定义在for语句头中的变量,在for循环体外是不可见的
init-statement;
while(condition){
statement;
expression;
} }
init-statement必须是声明语句(初始化?)、表达式语句、或者空语句。同时,他可以定义多个对象,但是因为它只能有一个声明语句,所以,每个变量的基础类型必须相同。
我们可以省略for语句头的某些部分,来使代码可读性更高。for语句头的三个部分都可以被省略
如果省略了条件语句部分,则for循环的条件部分会一直为true
范围 for 循环:
for(declarration : expression)
do while 语句:statement
expression必须是一个序列
如果需要对序列中的元素执行写操作,循环变量声明成引用类型。
不能通过范围 for 循环语句增加vector对象(或其他容器)的元素,因为在范围 for 语句中,预存了end()的值。一旦在序列中添加(删除)元素,end函数的值就可能变得无效。
do
statement
while(conditon);
do while 语句是先执行一遍循环体中的内容后再判断条件语句。
do while 语句应该在括号包围起来的条件后面用一个分号表示语句结束。
condition不能为空,同时condition中使用的变量必须定义在循环体之外。
跳转语句:
break:终止离他最近的 while、for、do while、switch语句
continue:终止最近循环中的当前迭代并立即开始下一次迭代。
只有当switch语句嵌套在迭代语句内部时,才能在switch里使用continue
goto:从共同语句无条件跳转到同一函数的另一条语句
goto 语句可用于跳出深嵌套循环
goto语句可以往后跳(跳回一个已执行的定义之前,意味着系统将销毁该变量,然后重新创建他),也可以往前跳(不能绕过一个带初始化的变量定义,声明可以)
最后
以上就是怕孤独母鸡为你收集整理的迭代语句以及跳转语句的全部内容,希望文章能够帮你解决迭代语句以及跳转语句所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复