Σε αυτό το σεμινάριο, θα μάθετε να δημιουργείτε τη δήλωση goto στον προγραμματισμό C. Επίσης, θα μάθετε πότε να χρησιμοποιήσετε μια δήλωση goto και πότε να μην τη χρησιμοποιείτε.
Η goto
δήλωση μας επιτρέπει να μεταφέρουμε τον έλεγχο του προγράμματος στην καθορισμένη ετικέτα.
Σύνταξη της δήλωσης goto
goto label;… … label: statement;
Η ετικέτα είναι αναγνωριστικό. Όταν goto
συναντηθεί η δήλωση, ο έλεγχος του προγράμματος μεταβαίνει label:
και ξεκινά την εκτέλεση του κώδικα.
Παράδειγμα: 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; )
Παραγωγή
1. Εισαγάγετε έναν αριθμό: 3 2. Πληκτρολογήστε έναν αριθμό: 4.3 3. Εισαγάγετε έναν αριθμό: 9.3 4. Εισαγάγετε έναν αριθμό: -2,9 Άθροισμα = 16,60 Μέσος όρος = 5,53
Λόγοι για να αποφύγετε το goto
Η χρήση της goto
δήλωσης μπορεί να οδηγήσει σε κώδικα με λάθη και δύσκολο να ακολουθηθεί. Για παράδειγμα,
one: for (i = 0; i 5) ( goto three; )…
Επίσης, η goto
δήλωση σάς επιτρέπει να κάνετε κακά πράγματα, όπως να ξεφύγετε από το πεδίο εφαρμογής.
Τούτου λεχθέντος, goto
μπορεί να είναι χρήσιμο μερικές φορές. Για παράδειγμα: να σπάσετε από ένθετους βρόχους.
Πρέπει να χρησιμοποιήσετε το goto;
Εάν πιστεύετε ότι η χρήση της goto
δήλωσης απλοποιεί το πρόγραμμά σας, μπορείτε να τη χρησιμοποιήσετε. Τούτου λεχθέντος, goto
είναι σπάνια χρήσιμο και μπορείτε να δημιουργήσετε οποιοδήποτε πρόγραμμα C χωρίς να το χρησιμοποιήσετε goto
καθόλου.
Ακολουθεί ένα απόσπασμα από τον Bjarne Stroustrup, δημιουργό του C ++, "Το γεγονός ότι το" goto "μπορεί να κάνει οτιδήποτε είναι ακριβώς γιατί δεν το χρησιμοποιούμε."