Instruction composée (c)
Une instruction composée (également appelé un « block ») apparaît généralement en tant que corps d'une autre instruction, telle que l'instruction d' if .déclarations et types décrit le formulaire et la signification des déclarations qui peuvent apparaître au début d'une instruction composée.
Syntaxe
instruction composée:
liste d'instructions**}**optde déclaration-listeoptde {déclaration-liste:
déclarationdéclaration de déclaration-liste
liste d'instructions:
instructioninstruction de liste d'instructions
S'il existe des déclarations, ils doivent précéder toutes les instructions.La portée de chaque identificateur déclaré au début d'une instruction composée s'étend de son point de déclaration à la fin de le bloc.Il est visible dans le bloc à moins qu'une déclaration du même identificateur existe dans un bloc interne.
Les ID dans une instruction composée sont auto présumé à moins qu'explicitement déclaré sinon avec registre, statique, ou extern, à l'exception de les fonctions, qui peuvent être extern.Vous pouvez arrêter le spécificateur d' extern dans les déclarations de fonction et la fonction sera toujours extern.
Le stockage n'est pas allouée et l'initialisation n'est pas autorisée si une variable ou une fonction est déclarée dans une instruction composée à la classe de stockage extern.La déclaration fait référence à une variable ou une fonction externe est définie ailleurs.
Les variables déclarées dans un bloc avec le mot clé d' auto ou de registre sont réaffectées et, si nécessaire, initialisées chaque fois que l'instruction composée est écrite.Ces variables ne sont pas définies après l'instruction composée soit quittée.Si une variable déclarée à l'intérieur d'un bloc possède l'attribut de statique , la variable est initialisée lorsque l'exécution du programme démarre et conserve sa valeur partout dans le programme.Consultez classes de stockage pour plus d'informations sur statique.
cet exemple montre une instruction composée :
if ( i > 0 )
{
line[i] = x;
x++;
i--;
}
Dans cet exemple, si i est supérieur à 0, toutes les instructions dans l'instruction composée sont exécutées dans l'ordre.