Lệnh Goto Trong C++ Là Lệnh Gì?

Cập nhật thông tin chi tiết về Lệnh Goto Trong C++ Là Lệnh Gì? mới nhất ngày 28/09/2020 trên website Zdungk.com. Hy vọng nội dung bài viết sẽ đáp ứng được nhu cầu của bạn, chúng tôi sẽ thường xuyên cập nhật mới nội dung để bạn nhận được thông tin nhanh chóng và chính xác nhất. Cho đến thời điểm hiện tại, bài viết này đã đạt được 4,851 lượt xem.

Các bạn thân mến! Hôm nay chúng ta sẽ tiếp tục tìm hiểu một lệnh nữa trong C++ đó là lệnh goto.

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. Lệnh goto trong C++

Câu lệnh goto trong C++ còn được gọi là câu lệnh nhảy. Lệnh goto được sử dụng để chuyển điều khiển sang phần khác của chương trình. Lệnh goto trong C++ nhảy đến nhãn được chỉ định.

Ví dụ như chương trình đang chạy đến ở dòng 300, chương trình gặp lệnh goto A (A là nhãn), nó sẽ nhãy lến dòng có nhãn là A và thực thi đoạn code ở đó.

Cú pháp

Cú pháp của lệnh goto trong C++ như sau:

goto label;
.
.
.
label: statement;

Hoặc

label: statement;
.
.
.
goto label;

Trong đó:

  • label: là nhãn do người lập trình định nghĩa, khi gặp lệnh goto label chương trình sẽ điều khiển đến label đó và thực thi đoạn code đó
  • statement: là các câu lệnh sẽ được thực thi

Lưu đồ hoạt động

Lưu đồ hoạt động của lệnh goto trong C++ như sau:

2. Ví dụ lệnh goto trong C++

Sau đây mình sẽ lấy một ví dụ đơn giản có sử dụng lệnh goto trong C++ đó là yêu cầu người dùng nhập một tuổi hợp lệ. ( Tuổi hợp lệ là tuối phải lớn hơn 0)

#include <iostream>  
using namespace std;  
int main()  
{  
    TuoiHopLe:    
        cout << "Nhap lai tuoi cua ban: " << endl;    
    cout << "Tuoi ban la: ";    
    int tuoi;  
    cin >> tuoi;  
    if (tuoi < 1){    
        goto TuoiHopLe;    
    }    
    else    
    {    
        cout << "Ban da nhap tuoi hop le" << endl;     
    }         
}

Và kết quả sau khi chạy và thực hiện đoạn code trên như sau:

Mình xin giải thích luồng chạy của chương trình trên như sau:

Giả sử mình sẽ đánh số thứ tự các dòng của dòng code trên như dưới đây:

#include <iostream>

using namespace std;

int main()

{

1 TuoiHopLe:

2 cout << “Nhap lai tuoi cua ban: ” << endl;

3 cout << “Tuoi ban la: “;

4 int tuoi;

5 cin >> tuoi;

6 if (tuoi < 1) {

7 goto TuoiHopLe;

}

else

{

8 cout << “Ban da nhap tuoi hop le” << endl;

}

}

Nếu một chương trình bình thường sẽ chạy theo thứ tự từ dòng 1 đến dòng cuối cùng và kết thúc chương trình. Chương trình không thể nào quay lại dòng trước để thực thi một lần nữa. Nhưng đối với chương trình có sử dụng goto thì cho phép chương trình quay lại dòng trước để thực thi tiếp.

Quay lại ví dụ trên, chương trình gọi tới hàm main sẽ chạy từ dòng 1, 2, 3, 4, 5, đến dòng 6 kiểm tra điều kiện nếu đúng thì chạy đến dòng 7, ở dòng 7 này có lệnh goto có nhãn là TuoiHopLe, chương trình sẽ tìm dòng có nhãn là TuoiHopLe để chạy, ở ví dụ trên nhãn TuoiHopLe ở dòng 1 vì vậy chương trình quay lại dòng 1 để chạy rồi tiếp tục dòng 2, 3, 4, 5, đến dòng 6 lại kiếm tra điều kiện nếu đúng thì đến dòng 7 và tiếp tục trở về dòng 1, nếu điều kiện sai thì chạy xuống dòng 8 và kết thúc chương trình.

Tuy nhiên các bạn nên hạn chế sử dụng lệnh goto trong chương trình của mình. Chỉ nên 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 mà thôi.

Lý do mà mình khuyên các bạn hạn chế sử dụng lệnh goto trong chương trình của mình là vì những điểm bất lợi của lệnh goto trong C++ như sau:

  • nó làm cho logic chương trình rất phức tạp
  • sử dụng lệnh goto rất khó để bảo trì, sử dụng nhiều lệnh goto trong một chương trình là một cơn ác mộng đối với người chịu trách nhiệm bào trì chương trình.
  • có thể sử dụng các câu lệnh break và continue để tránh sử dụng lệnh goto
  • chương trình rất dể bị vô vòng lặp vô hạn

Mình có thể giải quyết ví dụ trên bằng vòng lặp do while và lệnh break trong C++ mà không cần dùng đến lệnh goto như sau:

#include <iostream>  
using namespace std;  
int main()  
{  
    int tuoi;
    do {
        cout << "Nhap lai tuoi cua ban: " << endl; 
        cout << "Tuoi ban la: ";   
        cin >> tuoi;
        if (tuoi < 1){
            
        }    
        else    
        {    
            cout << "Ban da nhap tuoi hop le" << endl;   
            break;
        }
    } while(tuoi < 1);
}

3. Kết luận

Như vậy là chúng ta đã tìm hiểu xong lệnh goto trong C++ là gì rồi. Trong bài học này các bạn chỉ cần biết cách sử dụng của lệnh goto là như thế nào thôi, mình không khuyến khích các bạn sử dụng lệnh goto để giải quyết vấn đề nhé, 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é. Mà trường hợp đặc biệt đó là gì thì mình cũng chưa biết vì đó giờ mình cũng chưa từng sử dụng lệnh goto trong chương trình của mình. 🙂

Như vậy mình sẽ kết thúc bài học này ở đây nhé. Cám ơn các bạn đã đọc bài viết.

Liên quan

Ethernet Switch Có Chức Năng Gì? - Xem 22,473

Ethernet Switch có chức năng gì? Switch là một thiết bị chọn lựa đường dẫn để gửi frame đến đích, hoạt động ở Lớp 2 của mô hình OSI. Đôi khi Switch còn được gọi là Bridge đa port hay Hub chuyển mạch. Switch quyết định chuyển frame dựa trên ... Khi hai máy thực hiện liên lạc với nhau, Switch chỉ thiết lập một mạch ảo giữa hai cổng tương ứng mà không làm ảnh hưởng đến lưu thông trên các cổng khác. Do đó, mạng LAN có hiệu suất hoạt động cao thường sử dụng chuyển mạch toàn bộ. Switch tập trung các kết nối và quyết định chọn đường dẫn để truyền dữ liệu hiệu quả. Frame được chuyển mạch từ cổng nhận vào đến


Oxit Axit Là Gì? Tính Chất Hóa Học Và Hướng Dẫn Bài Tập Oxit Axit - Xem 19,305

Oxit axit là các oxit khi tác dụng với nước sẽ tạo ra axit, tác dụng với kiềm tạo thành muối hóa học. Oxit axit thường là oxit của phi kim ứng với một axit hoặc kim loại có hóa trị cao. Vậy tính chất hóa học của oxit axit ... Oxit axit thường là oxit của phi kim ứng với một axit hoặc kim loại có hóa trị cao. Vậy tính chất hóa học của oxit axit là gì? Cách giải bài tập oxit axit tác dụng với bazo như thế nào? Cách gọi tên oxit axit Tên oxit axit: (Tên tiền tố chỉ số nguyên tử của phi kim) + Tên phi kim + (tên tiền tố chỉ số nguyên tử oxi) + ''Oxit'' Tính chất hóa học của oxit axit Trừ SiO 2 thì hầu hết các oxit axit


Drama Là Gì ? Ý Nghĩa Của Từ Drama Trên Facebook Là Gì? - Xem 16,236

Xã hội ngày càng phát triển kéo theo nhiều trào lưu xuất hiện, các thuật ngữ, ngôn từ mới lạ ngày càng nhiều trên các mạng. Những nội dung, các câu chuyện có tính chất kịch tính, gay cấn kéo dài luôn dành được sự quan tâm của các bạn ... Bàn tán những câu chuyện những chủ đề hot, những câu chuyện hay cái phốt trên mạng xã hội. Thực trạng drama ngày nay Với sự phát triển ngày càng cao thì sự lan truyền trên mạng xã hội ngày càng nhanh chóng. Kéo theo những câu chuyện drama của giới trẻ lan tràn tạo nên những chuỗi hít drama ngập tràn. Nắm bắt được việc đó những hội nhóm được thành lập ngày càng nhiều để phục vụ


Giải Vbt Vật Lý Lớp 6 - Xem 14,157

Giải bài tập môn Vật lý 6 Giải VBT Vật lý lớp 6 – Bài 8: Trọng lực – Đơn vị lực là tài liệu tham khảo môn Vật lý 6 hay dành cho các em học sinh, giúp các em ôn tập và củng cố kiến thức đã học ... Lực này do Trái Đất tác dụng lên viên phấn. II - PHƯƠNG VÀ CHIỀU CỦA TRỌNG LỰC 1. Phương và chiều của trọng lực Câu C4 trang 31-32 VBT Vật Lí 6: Lời giải: a) Khi quả nặng treo trên dây dọi đứng yên thì trọng lực tác dụng vào quả nặng đã


Kimochi Yamate Là Gì? Ý Nghĩa Của I Cư Kimochi Yamete Trong Tiếng Nhật? - Xem 12,276

Kimochi Yamate hay i cư kimochi và i kư kimochi là những thuật ngữ, cụm từ được sử dụng khả phổ biến trong thời đại hiện nay. Nhưng bạn có thật sự hiểu được nghĩa của từ kimochi là gì? Ở bài viết dưới đây, Zdungk.com sẽ giải đáp toàn ... Và được sử dụng nhiều với hàm nghĩ khi mà nam giới thoả mãn bạn giới của mình và ngược lại. Cho nên khi sử dụng kimochi trong ngữ cảnh này khá nhạy cảm nên các bạn trẻ nên lưu ý khi sử dụng để tránh gây khiếm nhã nhé. Tại sao các bạn trẻ lại thường xuyên sử dụng kimochi với hàm nghĩa trên? Đây là điều hoàn toàn dễ hiểu bởi chúng ta thường biết rằng, Nhật Bản là nơi có


Đa Dạng Sinh Học Là Gì? Nguyên Nhân, Biện Pháp Hạn Chế Suy Giảm Đa Dạng Sinh Học - Xem 11,781

Đa dạng sinh học là sự phong phú của nhiều nhiều dạng, loài và các biến dị di truyền của mọi sinh vật trong đời sống tự nhiên, sự đa dạng và phong phú này được chia làm nhiều cấp độ tổ chức sinh giới đặc biệt là với các ... Thuật ngữ đa dạng sinh học cũng bao trùm mức độ biến đối của thế giới tự nhiên trong đó các sinh vật là đơn vị cấu thành. Các bạn có thể tìm hiểu thêm khái niệm đa dạng sinh học là gì, giá trị đa dạng sinh học cũng như nguyên nhân và biện pháp cụ thể để hạn chế suy giảm đa dạng sinh học trong bài viết dưới đây! Thế nào là đa dạng sinh học? Đa dạng sinh học là bao gồm


Z Là Gì Trong Toán Học? - Xem 11,187

Bạn có từng nghe về tập hợp R trong toán học chưa? Hẳn là rất rất quen phải không? Dĩ nhiên rồi vì lớp 6 lớp 7 chúng ta được học cái này mà. Vậy Z là gì trong toán học nhỉ? “Tập hợp Z là tập hợp các số ... Vậy Z là gì trong toán học nhỉ? "Tập hợp Z là tập hợp các số nguyên âm, số nguyên dương và số 0. Z= {...; -2; -1; 0; 1; 2; ...}" VD: -10; -9; -8; 100 ; 0 đều thuộc tập hợp Z Tập hợp z trong toán học còn có một tên gọi khác là số nguyên. Tập hợp số nguyên chỉ ra các số nguyên là miền xác định nguyên duy nhất mà các phần tử dương của nó được sắp thứ tự tốt và các thứ tự đó


Tb Là Gì Trên Facebook? - Xem 11,088

TB nghĩa là gì? TB là viết tắt của từ gì? TB là 1 từ viết tắt có rất nhiều nghĩa tiếng việt và tùy từng ngữ cảnh mà ta hiểu nó sẽ có nghĩa là gì, dưới đây là các nghĩa hay được sử dụng nhất của từ viết ... Đơn vị này cao cấp hơn Gigabyte - GB. 1 TB = 1024 GB 5 TB = 5120 GB 10 TB = 10240 GB Ví dụ: Bạn có ổ cứng dung lượng 2 TB tức là ổ cứng của bạn bằng 2048 GB Một bộ phim, thư mục, video có dung lượng 1TB tức là 1048 GB -phim HD dung lượng cao. Vậy nếu bạn thấy đứng đằng trước TB là 1 con số thì nó thường là viết tắt của cụm từ Terabyte TB trên Facebook nghĩa là gì? Đối với


Số Cvv/cvc Trên Thẻ Atm Vietcombank Là Gì? - Xem 10,098

Số Cvv/Cvc trên thẻ atm đang được rất nhiều chủ thẻ quan tâm. Nhất là với những người dùng thẻ atm Vietcombank. Vậy số Cvv/Cvc trên thẻ atm vietcombank là gì? Bị lộ có sao không? Số Cvv/Cvc trên thẻ atm vietcombank là gì? Không phải ai dùng thẻ atm ... Vậy số Cvv/Cvc trên thẻ atm vietcombank là gì? Bị lộ có sao không? Số Cvv/Cvc trên thẻ atm vietcombank là gì? Không phải ai dùng thẻ atm cũng để ý đến số Cvv/Cvc. Đó là 3 chữ số ngược được in bằng mực đen, hơi nghiêng. Số này nằm ngay sau dải ô chữ ký chủ


Mã Zip Iphone Là Gì? - Xem 9,900

Zip Code (mã zip) là một trong những khái niệm không quá xa lạ đối với thế hệ trẻ. Chúng liên quan trực tiếp tới quy trình giao – Nhận bưu kiện khi mua sắm online hay đặt hàng thông qua các ứng dụng giao dịch trực tuyến. Không chỉ ... Trong khi đó, tại một số các quốc gia như Anh hoặc Canada, mã bưu chính lại gồm cả số lẫn chữ cái. Cấu trúc của mã zip thường bao gồm một tới hai chữa số đầu được đặt theo tên của thành phố/ tỉnh địa phương. Số thứ hai đại diện cho quận, huyện trong khu vực. Tiếp đó là một khoảng trắng và cuối cùng là một mã số tùy ý gồm một và hai chữ cái khác nhau. Mã Zip Code iPhone


Đề xuất

Tìm Hiểu Ship Hàng, Shipper, Free Ship Có Nghĩa Là Gì? - Xem 2,772

Ship hàng là gì? Shipper là gì? Free ship là gì? Ship hàng, Shipper, Free ship có ý nghĩa như thế nào? Hãy để ngôi nhà kiến thức giải đáp cho bạn qua bài viết này nhé. Có thể bạn quan tâm: Thẻ debit – credit card là gì – ... Họ cũng được gọi Shipper. Shipper rất giống bưu tá của bưu điện. Tuy nhiên Bưu tá của bưu điện họ giao thư là chủ yếu, thỉnh thoảng thì giao bưu kiện. Còn shipper chỉ là giao hàng chủ yếu. Sẵn nhắc về shipper, thì mình cũng chửi những kẻ


Mình Đã Học Cách Viết Review Sách & Áp Dụng Nó Thành Công Như Thế Nào? - Xem 3,267

Mình thường viết nhiều dạng bài review, nhưng đối với mình, review sách là một trong những thể loại khó nhằn nhất trên đời. Lúc đầu, mình còn khá lạ lẵm với dạng bài này, thế nhưng sau một thời gian thực hiện nhiều bài review khác nhau như: Review ... Vậy nên mình khuyến khích bạn nên chuẩn bị sẵn một cây bút dạ quang và highlight lại những chi tiết ấn tượng. Khi viết review, bạn chỉ cần lật lại quyển sách rồi tự động não sẽ nhớ ra "à lúc ấy khi đọc chương này mình đã cảm


Màu Sắc Trong Tiếng Anh: Bảng Màu Và Các Loại - Xem 3,960

Tiếp tục học từ mới theo chủ đề mà Studytienganh đã giới thiệu, hôm nay chúng ta sẽ học về sắc màu trong tiếng Anh, về bảng màu và các loại màu. Hãy cùng chúng tôi làm rực rỡ thêm cuộc sống của bạn bằng thật nhiều sắc màu đa ... Orange /ˈɒr.ɪndʒ/ Cam 7. Pink /pɪŋk/ Hồng 8. Purple /ˈpɜː.pļ/ Màu


Kiểm Tra Thành Phần Vật Liệu Với Huỳnh Quang Tia X (X - Xem 2,772

Huỳnh quang tia X (XRF) là gì? Quang phổ huỳnh quang tia X (XRF) là một kỹ thuật phân tích nguyên tố với ứng dụng rộng rãi trong khoa học và công nghiệp. XRF dựa trên nguyên tắc rằng các nguyên tử riêng lẻ, khi được kích thích bởi một ... Ở đây kích thước hạt và tính đồng nhất đóng một vai trò lớn. Lớp bề mặt mỏng phải đại diện cho mẫu khối lượng lớn và các nghiên cứu đã chỉ ra rằng sai số lớn (lên tới 50%) trong định lượng có thể xảy ra đối


Edit Truyện, Beta Truyện, Dịch Truyện Là Gì? - Xem 2,970

Edit là một công việc chỉnh sửa bài viết hay gọi là biên tập, mà người chỉnh sửa bài viết đó gọi là editor. Vậy edit khác beta chỗ nào?Đây là bài viết thuyên về quan điểm chủ quan của cá nhân. * * * Tôi đã từng là một ... Hắn khi còn bé vốn nhờ dung mạo y lệ thanh tú, lưu lạc nơi phong trần, chưa từng vì hoàn cảnh mà thay đổi, luôn giữ vững tâm tính, sau đó đi làm nô bộc hai năm, được người hảo tâm cứu ra, vào năm chín tuổi bị người đưa vào trong


Bạn đang xem bài viết Lệnh Goto Trong C++ Là Lệnh Gì? trên website Zdungk.com. Hy vọng những thông tin mà chúng tôi đã chia sẻ là hữu ích với bạn. Nếu nội dung hay, ý nghĩa bạn hãy chia sẻ với bạn bè của mình và luôn theo dõi, ủng hộ chúng tôi để cập nhật những thông tin mới nhất. Chúc bạn một ngày tốt lành!