English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutoriel de base C

Contrôle de flux C

Fonctions du langage C

Tableaux du langage C

Pointeurs en langage C

Chaînes de caractères en langage C

Structure de type C

Fichier C

Autres C

Manuel de référence C

Instructions goto du langage C

Dans ce tutoriel, vous apprendrez à créer des instructions goto en programmation C. De plus, vous apprendrez quand utiliser et quand ne pas utiliser l'instruction goto.

L'instruction goto nous permet de transférer le contrôle du programme à un label spécifique.

Syntaxe de l'instruction goto

goto label;
... .. ...
... .. ...
label: 
instruction;

label est un identificateur. Lorsque goto rencontre cette instruction, le contrôle du programme saute à label: et commence à exécuter le code.

Exemple : instruction goto

//Le programme calcule la somme des nombres positifs
//Si l'utilisateur entre un nombre négatif, affichez la somme et la moyenne.
#include <stdio.h>
int main() {
   const int maxInput = 100;
   int i;
   double number, average, sum = 0.0;
   for (i = 1; i <= maxInput; ++i) {
      printf("%d. Entrer un nombre: ", i);
      scanf("%lf", &number);
      
      //Si l'utilisateur entre un nombre négatif, il saute
      if (number < 0.0) {
         goto saut;
      }
      sum += number;
   }
saut:
   average = sum / (i - 1);
   printf("Somme(total) = %.2f\n", sum);
   printf("Moyenne(moyenne) = %.2f", average);
   return 0;
}

Résultat de la sortie

1. Entrer un nombre: 3
2. Entrer un nombre: 4.3
3. Entrer un nombre: 9.3
4. Entrer un nombre: -2.9
Somme(total) = 16.60
Moyenne(moyenne) = 5.53

Les raisons d'éviter ou de limiter l'utilisation des instructions goto

L'utilisation de l'instruction goto peut rendre le code erroné et difficile à suivre. Par exemple,

one:
for (i = 0; i < number; ++i)
{
    test += i;
    goto two;
}
two: 
if (test > 5) {
  goto three;
}
... .. ...

En plus, les instructions goto vous permettent d'exécuter des opérations indésirables, telles que sortir d'une plage.

Cependant, goto peut parfois être utile. Par exemple : briser les boucles imbriquées.

Devriez-vous utiliser goto ?

Si vous pensez que l'utilisation des instructions goto peut simplifier le programme, vous pouvez l'utiliser. Cependant, goto est rarement utile, et vous pouvez également créer n'importe quel programme C sans utiliser d'instruction goto.

C'est le C ++à propos du créateur Bjarne StroustrupLe fait que 'goto' soit omnipotent est précisément la raison pour laquelle nous ne l'utilisons pas.