Tuyên bố C goto

Mục lục

Trong hướng dẫn này, bạn sẽ học cách tạo câu lệnh goto trong lập trình C. Ngoài ra, bạn sẽ học khi nào sử dụng câu lệnh goto và khi nào không sử dụng nó.

Câu gotolệnh cho phép chúng ta chuyển quyền điều khiển chương trình đến nhãn được chỉ định.

Cú pháp của câu lệnh goto

 goto label;… … label: statement; 

Nhãn là một định danh. Khi gotocâu lệnh gặp phải, điều khiển của chương trình sẽ nhảy đến label:và bắt đầu thực thi mã.

Ví dụ: goto Statement

 // Program to calculate the sum and average of positive numbers // If the user enters a negative number, the sum and average are displayed. #include int main() ( const int maxInput = 100; int i; double number, average, sum = 0.0; for (i = 1; i <= maxInput; ++i) ( printf("%d. Enter a number: ", i); scanf("%lf", &number); // go to jump if the user enters a negative number if (number < 0.0) ( goto jump; ) sum += number; ) jump: average = sum / (i - 1); printf("Sum = %.2f", sum); printf("Average = %.2f", average); return 0; )

Đầu ra

 1. Nhập số: 3 2. Nhập số: 4.3 3. Nhập số: 9.3 4. Nhập số: -2,9 Tổng = 16,60 Trung bình = 5,53

Những lý do nên tránh goto

Việc sử dụng gotocâu lệnh có thể dẫn đến mã lỗi và khó theo dõi. Ví dụ,

 one: for (i = 0; i 5) ( goto three; )… 

Ngoài ra, gotocâu lệnh cho phép bạn thực hiện những điều tồi tệ như nhảy ra khỏi phạm vi.

Điều đó đang được nói, gotođôi khi có thể hữu ích. Ví dụ: để ngắt khỏi các vòng lặp lồng nhau.

Bạn có nên sử dụng goto?

Nếu bạn cho rằng việc sử dụng gotocâu lệnh đơn giản hóa chương trình của mình, bạn có thể sử dụng nó. Điều đó đang được nói, gotohiếm khi hữu ích và bạn có thể tạo bất kỳ chương trình C nào mà không cần sử dụng gotohoàn toàn.

Đây là trích dẫn từ Bjarne Stroustrup, người tạo ra C ++, "Thực tế là 'goto' có thể làm bất cứ điều gì chính xác là lý do tại sao chúng tôi không sử dụng nó."

thú vị bài viết...