文章目录
跳转语句
跳转语句就是用来直接跳转到任意位置执行代码的语句,其在底层的实现就是通过使用跳转指令来完成的。
break语句
brea语句是用来跳出switch或者循环体结构的语句。循环语句中的break用法与switch类似,可以直接忽视条件判断而直接跳出循环。
break在for循环中的用法
#include<iostream>
using namespace std;
//break语句
int main()
{
for ( int i=0;i<10;i++)
{
cout << i << endl;
if (i>5) break;
}
cout << "循环结束!" << endl;
return 0 ;
}
运行结果为:
可以看出,当 i=6,的时候,break会直接跳出循环,而没有继续与10比较。
break语句对所有循环语句和switch语句都有效,但是对if语句没有作用。
#include<iostream>
using namespace std;
//if语句中的break语句
int main()
{
for ( int i = 0 ;i < 10 ; i++ )
{
cout << i << endl;
if (i>5)
{
break;
}
cout << "在if语句外!" << endl;
}
cout << "跳出循环!" <<endl;
return 0 ;
}
运行结果:
在示例中,我们可以看到第七次循环中 i > 5 的条件成立,break语句并没有让程序调到 if语句外,打印“在if语句外”,而是直接跳到了循环的外面。
continue语句
break语句解决了提早结束循环的问题,但有时我们只想结束当前一轮的循环,而依然让循环继续下去,这时使用continue语句就可以解决这一问题了。continue语句不会直接调到整个循环的后面,而是跳回至条件判断,这样当前一轮循环剩余的代码不会执行,而新一轮的循环依旧可以继续进行。
continue语句
#include <iostream>
using namespace std;
//continue 语句
int main()
{
for (int i = 0 ;i<10;i++)
{
if ( i % 2 ==0 )
{
continue;
}
cout << i <<endl;
}
return 0;
}
运行结果:
示例再循环中每次碰到 i能被2 整除余0,也就是 i 偶数的情况时,就用continue跳过本次循环的后续代码,进入下一次循环,这样就只有奇数会被打印出来了。
goto语句
goto语句可以使程序跳转到任意一个用标签(Label)标记过的语句。
goto语句
#include <iostream>
using namespace std;
//goto语句
int main()
{
goto here ;
cout << "本应该输出这句。" << endl;
here:
cout << "现在打印这句。" << endl;
return 0;
}
运行结果:
示例中的第一个输出语句被跳过了,程序通过goto直接跳转到here,并只打印了第二个输出语句。
再试一下用两个goto语句实现while循环的示例
使用goto语句实现while循环
#include <iostream>
using namespace std;
//使用goto语句实现while循环
int main()
{
int i =0;
loophead:
if ( i >= 10 )
goto loopend;
cout << i << endl;
i++;
goto loophead;
loopend:
return 0;
}
运行结果为:
这个示例的行为与while循环几乎一模一样,但是看起来却要难读很多。loophead标志着循环的开始,如果计数器 i大于等于10 ,那么循环结束,goto将会跳转到标志着循环尾部的loopend;如果计数器小于10,循环将会正常进行,并在最后自动跳转到loophead.
如果对你有帮助请点赞支持一下下~