C语言中break和continue的区别

时间:12-02-26 栏目:编程之美 作者:JH单片机 评论:0 点击: 8,895 次



在C语言中,两个跳出循环语句的语句break和continue。初学C,难免会混淆两个语句之间的区别,导致程序某个局部出现逻辑错误。

曾经我在用单片机去驱动一个16X16的点阵时,就用到break和continue两个语句,结果刚好用反了。后来查了很久才查出来。这是个低级错误,只要用心一点,就不会再犯了。

其实,最简单的来讲。break语句就是退出这个循环体,执行循环体的下一条语句。而continue语句是退出本次循环,即本次循环以后的语句不执行力,开始新一轮的循环。

简述:break语句为跳出循环;continue语句为提前循环。

不知道这么说,是否明了?这里再分别作详细解释

break语句:

break语句通常用在循环语句和开关语句中。当break用于开关语句switch中时,可使程序跳出switch而执行switch以后的语句;
如果没有break语句,则会从满足条件的地方(即与switch(表达式)括号中表达式匹配的case)开始执行,直到switch结构结束。
当break语句用于do-while、for、while循环语句中时,可使程序终止循环而执行循环后面的语句,通常break语句总是与if语句联在一起。即满足条件时便跳出循环。

continue语句:

其作用为结束本次循环。即跳出循环体中下面尚未执行的语句,对于while循环,继续求解循环条件。而对于for循环程序流程接着求解for语句头中的第三个部分expression表达式。
continue语句和break语句的区别是:continue语句只结束本次循环,而不终止整个循环的执行。而break语句则是结束整个循环过程,不再判断执行循环的条件是否成立。
continue语句的作用是跳过循环本中剩余的语句,并到循环末尾。
continue语句只用在for、while、do-while等循环体中, 常与if条件语句一起使用, 用来加速循环。

也不再用程序举例了,这问题本应该很简单。

 
关于本文作者

爱数电,爱模电;爱单片机,爱嵌入式;爱EDA,也爱DSP; 爱Altium Designer,也爱PCB;爱生活,同时也爱微博…… 一个自动化专业的学生,与志同道合者学习交流!!!

QQ 号码:594420349
腾讯微博:http://t.qq.com/kevin_753

项目合作