Menu
Coddy logo textTech

Instructions de saut (goto)

Fait partie de la section Logique & Flux du Journey C# de Coddy — leçon 20 sur 66.

L'instruction goto en C# fournit un moyen de transférer le contrôle directement vers une instruction étiquetée au sein de la même méthode.

Créez une étiquette dans votre code :

start:

Utilisez l'instruction goto pour sauter vers cette étiquette :

goto start;

Voici un exemple simple qui utilise goto pour créer une boucle :

int i = 0;

start:
if (i < 5)
{
    Console.WriteLine(i);
    i++;
    goto start;
}

Après l'exécution du code ci-dessus, la sortie sera :

0
1
2
3
4

Bien que goto existe en C#, il est généralement recommandé d'utiliser des instructions de contrôle de flux structurées (if, for, while, etc.) à la place, car elles rendent le code plus lisible et facile à maintenir.

challenge icon

Défi

Facile

Créez une méthode nommée ProcessCommands qui prend un argument :

  • Une chaîne de caractères (command) qui contient une commande à traiter.

La méthode doit implémenter un processeur de commandes simple en utilisant des instructions goto :

  • Si la commande est "start", affichez "Starting process" puis allez à l'étiquette "end"
  • Si la commande est "stop", affichez "Stopping process" puis allez à l'étiquette "end"
  • Si la commande est "pause", affichez "Pausing process" puis allez à l'étiquette "end"
  • Si la commande est n'importe quoi d'autre, affichez "Unknown command" puis allez à l'étiquette "end"
  • À l'étiquette "end", affichez "Command processed"

Aide-mémoire

L'instruction goto transfère le contrôle directement à une instruction étiquetée au sein de la même méthode.

Créer une étiquette :

start:

Sauter vers une étiquette en utilisant goto :

goto start;

Exemple d'utilisation de goto pour créer une boucle :

int i = 0;

start:
if (i < 5)
{
    Console.WriteLine(i);
    i++;
    goto start;
}

Bien que goto existe en C#, les instructions de flux de contrôle structurées (if, for, while, etc.) sont généralement recommandées pour une meilleure lisibilité et maintenance du code.

Essayez vous-même

using System;

public class Program
{
    public static void ProcessCommands(string command)
    {
        // Écrivez votre code ici
    }
    
    public static void Main(string[] args)
    {
        string command = Console.ReadLine();
        ProcessCommands(command);
    }
}
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Logique & Flux