Lệnh goto trong C++
Trong lập trình C++, câu lệnh goto được sử dụng để thay đổi luồng thực thi thông thường của chương trình bằng cách nhảy tới một phần khác của chương trình. Vậy lệnh goto trong C++ là gì? Chúng ta sẽ cùng tìm hiểu trong nội dung sau đây nhé.
1. Câu lệnh goto trong C++ là gì?
Câu lệnh goto trong C++ cung cấp một bước nhảy vô điều kiện từ 'goto' đến một câu lệnh có nhãn trong cùng một hàm.
Chú ý: Việc sử dụng câu lệnh goto không được khuyến khích sử dụng trong bất kỳ ngôn ngữ lập trình nào vì nó rất khó để theo dõi luồng điều khiển của chương trình, làm cho chương trình khó hiểu và khó bảo trì. Bất kỳ chương trình nào sử dụng goto đều có thể được viết lại theo cách bình thường.
2. Cú pháp
Cú pháp cho câu lệnh goto trong C++ như sau:
goto label;
..
.
label: statement;
Ở đây nhãn (label) có thể là bất kỳ văn bản thuần tuý trừ từ khóa C và nó có thể được đặt ở bất kỳ vị trí nào trong chương trình C, bên trên hoặc bên dưới câu lệnh goto.
3. Ví dụ sử dụng lệnh goto trong C++
#include <iostream>
using namespace std;
int main () {
int a = 10;
TEST:do {
if( a == 15) {
// quay ve do khi a = 15 (bo qua lenh print)
a = a + 1;
goto TEST;
}
cout << "Gia tri cua a: " << a << endl;
a++;
} while( a < 20 );
return 0;
}
Kết quả:
Gia tri cua a: 10
Gia tri cua a: 11
Gia tri cua a: 12
Gia tri cua a: 13
Gia tri cua a: 14
Gia tri cua a: 16
Gia tri cua a: 17
Gia tri cua a: 18
Gia tri cua a: 19
Lý do cần tránh sử dụng câu lệnh goto
Câu lệnh goto cho phép nhảy tới bất kỳ phần nào của chương trình, nhưng logic của chương trình sẽ trở nên phức tạp và rối rắm.
Trong lập trình hiện đại, câu lệnh goto được xem là một cấu trúc gây hại và là một trường hợp cần tránh.
Câu lệnh goto có thể được thay thế trong hầu hết các chương trình C++ bằng cách sử dụng câu lệnh break và continue.
Trên đây là bài viết của eLib.VN về câu lệnh go to trong C++. Nhìn chung, bạn không nên sử dụng câu lệnh Goto. Chỉ thật sự sử dụng lệnh goto trong một số trường hợp đặc biệt bắt buộc phải sử dụng lênh goto thôi nhé. Vì nó gây khó khăn cho việc theo dấu dòng điều khiển của một chương trình, làm cho chương trình khó hiểu và khó chỉnh sửa. Chúc các bạn thành công!
Như vậy là chúng ta đã hoàn thành nội dung "Câu lệnh điều khiển C++". Để củng cố và nắm vững nội dung đã học, mời bạn cùng thử sức với "Bộ Câu hỏi Trắc Nghiệm C++ có đáp án chi tiết"
Tham khảo thêm
- doc Mệnh đề if-else trong C++
- doc Mệnh đề switch-case trong C++
- doc Vòng lặp For trong C++
- doc Vòng lặp while, do while trong C++
- doc Lệnh break và continue trong C++