คำสั่ง goto เป็นคำสั่งข้ามที่ช่วยให้ตัวควบคุมโปรแกรมข้ามจาก goto ไปยังป้ายกำกับได้ การใช้คำสั่ง goto จะทำให้โปรแกรมดูซับซ้อนและเข้าใจยาก
ต่อไปนี้เป็นไวยากรณ์ของคำสั่ง goto
goto label; . . . label: statements;
โปรแกรมที่แสดงคำสั่ง goto ใน C++ มีดังต่อไปนี้
ตัวอย่าง
#include <iostream> using namespace std; int main () { int i = 1; while(1) { cout<< i <<"\n"; if(i == 10) goto OUT; i++; } OUT: cout<<"Out of the while loop"; return 0; }
ผลลัพธ์
ผลลัพธ์ของโปรแกรมข้างต้นมีดังนี้
1 2 3 4 5 6 7 8 9 10 Out of the while loop
ตอนนี้ เรามาทำความเข้าใจโปรแกรมข้างต้นกัน
มีการใช้ while loop ในโปรแกรมด้านบน ในแต่ละรอบของ while loop ค่าของ i จะแสดงขึ้น จากนั้น ถ้าคำสั่งถูกใช้เพื่อตรวจสอบว่าค่าของ i คือ 10 หรือไม่ ถ้าใช่ คำสั่ง goto จะใช้เพื่อออกจากลูป while มิฉะนั้น ฉันจะเพิ่มขึ้น 1
ป้ายกำกับที่ใช้กับคำสั่ง goto คือ OUT และนำการควบคุมโปรแกรมออกจากลูป while จากนั้น "Out of the while loop" จะปรากฏขึ้น ข้อมูลโค้ดสำหรับสิ่งนี้มีดังต่อไปนี้
int i = 1; while(1) { cout<< i <<"\n"; if(i == 10) goto OUT; i++; } OUT: cout<<"Out of the while loop";