goto label คำสั่งกระโดดข้ามไปที่ระบุ
ใช้ในกรณีคิดไม่ออก หรือออกจากลูปที่ลึกมากหาทางออกไม่ได้ ภาษาC
12/2/2561 SONGCHAI
PRAPATRUNGSEE
goto label คำสั่งกระโดดข้ามไปที่ระบุ
ใช้ในกรณีคิดไม่ออก หรือออกจากลูปที่ลึกมากหาทางออกไม่ได้ ภาษาC
/* 12/2/2561
goto label
by SOM MCU */
#include <REGX51.H>
//REGISTER 51 MCU
void main(void)
{
char
x,i;
for(i=0; i<8; i++)
{
if(x==1) goto POSIT;
}
POSIT:
x=0;
}
goto label คือ คำสั่งกระโดดข้ามไปยังตำแหน่งที่เราระบุ
ซึ่งเป็นคำสั่งที่ง่ายต่อการใช้งาน
ส่วนใหญ่จะใช้เมื่อ คิดอะไรไม่ออก
หรือ ไม่สามารถออกจากลูปได้
goto
[Control Structure]
Description
Transfers program flow to a
labeled point in the program
Syntax
label:
goto label; // sends program flow
to the label
Example Code
for(byte r = 0; r < 255; r++){
for(byte g = 255; g > -1; g--){
for(byte b = 0; b < 255; b++){
if (analogRead(0) > 250){ goto
bailout;}
// more statements ...
}
}
}
bailout:
Notes and Warnings
The use of goto is discouraged in
C programming, and some authors of C programming books claim that the goto
statement is never necessary, but used judiciously, it can simplify certain
programs. The reason that many programmers frown upon the use of goto is that
with the unrestrained use of goto statements, it is easy to create a program
with undefined program flow, which can never be debugged.
With that said, there are
instances where a goto statement can come in handy, and simplify coding. One of
these situations is to break out of deeply nested for loops, or if logic
blocks, on a certain condition.
ไม่มีความคิดเห็น:
แสดงความคิดเห็น