دستور break/continue (Break/Continue)
اینجا با «دستور break/continue» کار می کنیم. دستور break یعنی «ایست کامل». دستور continue یعنی «این دور را رد کن». مثل بازی، گاهی بازی را قطع می کنی؛ گاهی فقط از یک مرحله می گذری.
break چیست؟
وقتی شرطی رسید، حلقه را همان جا متوقف کن.
int i;
for (i = 0; i < 10; i++) {
if (i == 4) {
break;
}
printf("%d\n", i);
}
continue چیست؟
وقتی شرطی رسید، فقط همان دور را رد کن.
int i;
for (i = 0; i < 10; i++) {
if (i == 4) {
continue;
}
printf("%d\n", i);
}
ترکیب break و continue
بعضی دورها را رد کن؛ روی عددی خاص، کلاً متوقف شو.
int i;
for (i = 0; i < 6; i++) {
if (i == 2) {
continue;
}
if (i == 4) {
break;
}
printf("%d\n", i);
}
break و continue در while
نمونه break در while
int i = 0;
while (i < 10) {
if (i == 4) {
break;
}
printf("%d\n", i);
i++;
}
نمونه continue در while
int i = 0;
while (i < 10) {
if (i == 4) {
i++;
continue;
}
printf("%d\n", i);
i++;
}
مثال واقعی
عددهای منفی را رد کن؛ اگر صفر دیدی، کلاً متوقف شو.
int myNumbers[] = { 3, -1, 7, 0, 9 };
int length = sizeof(myNumbers) / sizeof(myNumbers[0]);
int i;
for (i = 0; i < length; i++) {
if (myNumbers[i] < 0) {
continue;
}
if (myNumbers[i] == 0) {
break;
}
printf("%d\n", myNumbers[i]);
}
نکته: break یعنی توقف کامل حلقه؛ continue یعنی رد کردن همان دور.
برای مرور حلقه ها، بخش حلقه for و مثال واقعی while را ببین. این صفحه دستور break/continue هم مرجع سریع توست.
جمع بندی سریع
- break حلقه را همان جا می بندد.
- continue فقط آن دور را رد می کند.
- در for و while یکسان عمل می کنند.
- شرط ها را ساده و خوانا بنویس.