การใช้งานคำสั่ง goto C++
ในบทความนี้ คุณจะได้เรียนรู้เกี่ยวกับ goto statment ว่ามันทำงานอย่างไร และเหตุใดจึงควรหลีกเลี่ยง
ในการเขียนโปรแกรม C++ คำสั่ง goto ใช้สำหรับเปลี่ยนลำดับการทำงานของโปรแกรมตามปกติโดยถ่ายโอนการควบคุมไปยังส่วนอื่นของโปรแกรม
ไวยากรณ์ของ goto Statement
goto label;
... .. ...
... .. ...
... .. ...
label:
statement;
... .. ...
ในไวยากรณ์ข้างต้น label เป็นตัวระบุ เมื่อ goto label; พบ การควบคุมโปรแกรมจะข้ามไปที่ label: และรันโค้ดด้านล่าง

ตัวอย่าง: goto Statement
# include <iostream>
using namespace std;
int main()
{
float num, average, sum = 0.0;
int i, n;
cout << "Maximum number of inputs: ";
cin >> n;
for(i = 1; i <= n; ++i)
{
cout << "Enter n" << i << ": ";
cin >> num;
if(num < 0.0)
{
// Control of the program move to jump:
goto jump;
}
sum += num;
}
jump:
average = sum / (i - 1);
cout << "\nAverage = " << average;
return 0;
}
เอาท์พุต
Maximum number of inputs: 10
Enter n1: 2.3
Enter n2: 5.6
Enter n3: -5.6
Average = 3.95
คุณสามารถเขียนโปรแกรม C++ ได้โดยไม่ต้องใช้คำสั่ง goto และโดยทั่วไปถือว่าเป็นความคิดที่ดีที่จะไม่ใช้งาน
เหตุผลที่ควรหลีกเลี่ยง goto Statement
คำสั่ง goto ให้อำนาจในการข้ามไปยังส่วนใดๆ ของโปรแกรม แต่ทำให้ตรรกะของโปรแกรมซับซ้อนและพันกัน
ในการเขียนโปรแกรมสมัยใหม่ คำสั่ง goto ถือเป็นโครงสร้างที่เป็นอันตรายและแนวปฏิบัติด้านการเขียนโปรแกรมที่ไม่ดี
คำสั่ง goto สามารถแทนที่ได้ในโปรแกรม C++ ส่วนใหญ่โดยใช้คำสั่ง break และ continue