Instructions en C#

Tip

Cet article fait partie de la section Notions de base pour les développeurs qui connaissent déjà au moins un langage de programmation et apprennent C#. Si vous débutez avec la programmation, commencez par commencer par les didacticiels De prise en main . Pour obtenir la syntaxe complète de l’instruction, consultez Instructions dans la spécification du langage C#.

Venant d’une autre langue ? Les déclarations, les conditions, les boucles et les retours peuvent être familiers. C# utilise sa propre syntaxe et sa propre classification pour ces fonctionnalités, que cet article présente.

Une instruction est une commande complète : « procédez ainsi ». Ensemble, les instructions d’un programme forment une recette que le programme suit du début à la fin. La plupart des instructions s’exécutent en séquence. Les branches choisissent les étapes à exécuter, et les boucles répètent les étapes.

Cet exemple déclare une quantité, l’affiche, puis utilise une if instruction pour décider s’il faut réapprovisionner :

int quantity = 5;
Console.WriteLine($"Quantity: {quantity}"); // => Quantity: 5

if (quantity < 10)
{
    quantity = 10;
    Console.WriteLine("Restocked"); // => Restocked
}

Console.WriteLine($"Quantity: {quantity}"); // => Quantity: 10

Lisez l’exemple en tant que commandes complètes avant d’examiner leurs parties. La déclaration, le premier appel à Console.WriteLine, la construction entière if et l’appel final à Console.WriteLine sont des instructions. Le bloc à l’intérieur de l’instruction if contient deux instructions supplémentaires.

Les énoncés contiennent souvent des expressions

Les instructions contiennent souvent des expressions, qui sont des éléments de code qui produisent des valeurs. Dans l’exemple précédent, la construction entière if est une instruction. Sa condition, quantity < 10, est une expression qui renvoie soit true, soit false.

Une instruction de déclaration introduit une variable locale ou une constante. Une expression d’initialiseur peut fournir sa première valeur :

int quantity = 5;

La ligne complète est une instruction de déclaration. L’initialiseur 5 est une expression dans cette instruction.

Une expression d’affectation stocke une valeur dans une variable, une propriété, un indexeur ou un autre emplacement de stockage. C# permet à une expression d’affectation de former une instruction d’expression :

quantity = 10;

Cette instruction effectue une action plutôt que de simplement calculer une valeur. Les appels de méthode et les opérations d’incrémentation sont d’autres instructions d’expression courantes :

Console.WriteLine("Restocking");
quantity++;

Seules les formes d’expression suivantes peuvent constituer des instructions d’expression :

  • Expressions d’affectation
  • Expressions d’appel de méthode
  • Expressions de création d’objets
  • Expressions d’incrémentation et de décrémentation préfixées ou postfixées
  • await Expressions

Toutes les expressions ne peuvent pas se suffire à elles-mêmes comme énoncé. Par exemple, quantity + 1; calcule une valeur, mais ne l’utilise pas. Ce n’est pas un énoncé valide.

Voici une définition de travail utile : une instruction est à peu près comme une phrase complète en anglais, tandis qu’une expression est semblable à une expression. Cette distinction vous aide à comprendre la terminologie formelle et les explications que vous rencontrerez dans la documentation et les spécifications, bien que le codage ordinaire vous oblige rarement à vous souvenir de la distinction consciemment.

Instructions de groupe dans des blocs

Un bloc regroupe zéro ou plusieurs instructions entre accolades ({ et }). C# considère le groupe comme une seule instruction. Dans l’exemple d’introduction, l’instruction if peut inclure à la fois l’affectation et l’appel à Console.WriteLine, car un bloc les regroupe en un seul corps. Les blocs peuvent s’imbriquer dans d’autres blocs.

Les instructions de sélection et d’itération désignent leur corps par le terme de instruction imbriquée. Ce corps peut être une instruction sans accolades ou un bloc qui regroupe plusieurs instructions.

Préférez un bloc même lorsqu’un corps ne contient qu’une seule instruction. Les accolades montrent quelles instructions appartiennent au bloc de code et empêchent que des modifications apportées ultérieurement ne placent accidentellement une instruction en dehors de celui-ci.

Les blocs définissent l’étendue de variable

Les variables déclarées dans un bloc sont accessibles à partir de leur déclaration jusqu’à la fin de ce bloc. Un bloc imbriqué peut utiliser des variables déclarées par un bloc englobant, mais le bloc englobant ne peut pas utiliser de variables déclarées uniquement dans le bloc imbriqué :

int outerValue = 10;

if (outerValue > 0)
{
    int innerValue = outerValue * 2;
    Console.WriteLine(innerValue); // => 20
}

// innerValue isn't in scope here.

Choisissez un énoncé pour la tâche

Une fois que vous avez reconnu les instructions en tant que commandes, vous pouvez choisir parmi leurs différents types par objectif :

  • Déclarer des données :les instructions de déclaration introduisent des variables et des constantes locales.
  • Effectuer des actions : Les instructions d’expression attribuent des valeurs, des méthodes d’appel, créent des objets, incrémentent ou décrémentent des valeurs, ou attendent des opérations asynchrones.
  • Choisissez des étapes :instructions de sélection, telles que if et switch, déterminent quel code est exécuté.
  • Répétez les étapes :instructions itération, telles que foreach, whileet for, répétez une instruction ou un bloc.
  • Transfert de contrôle :Instructions de saut, telles que break, continue, return et yield, déplacent l’exécution vers un autre point.
  • Gérer les exceptions :instructions de gestion des exceptions, telles que try, catchet throw, répondent aux erreurs ou signalent des erreurs.
  • Gérer les ressources :L’instructionusing garantit que les ressources sont supprimées.
  • Utilisez le comportement spécialisé : Les instructions checked et unchecked, fixed et lock prennent en charge des scénarios spécifiques.

Spécification du langage C#

Pour plus d’informations, consultez la section Instructions de la spécification du langage C#.

Voir aussi