IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
next up previous contents index
Next: Visibilité des identificateurs Up: Les déclarations Previous: Déclarations de définition et

Portée des déclarations

  Il existe en C quatre types de portées possibles pour les déclarations :
-
un identificateur déclaré à l'extérieur de toute fonction, a une portée qui s'étend de son point de déclaration jusqu'à la fin du source ;

-
un paramètre formel de fonction a une portée qui s'étend de son point de déclaration jusqu'à la fin de l'instruction composée formant le corps de la fonction ;

-
un identificateur déclaré dans une instruction composée a une portée qui s'étend du point de déclaration jusqu'à la fin de l'instruction composée ;

-
une étiquette d'instruction a une portée qui comprend tout le corps de la fonction dans laquelle elle apparaît.

Exemple :

int i;             /*   déclaration à l'extérieur de toute fonction      */

void proc1(int j)  /*  j paramètre de la procédure proc1                 */
{

...                /*   instructions 1                                   */

k:
if (...)
   {
   int l;      /*  déclaration à l'intérieur d'une instruction composée  */

   ...         /*   instructions 2                                       */
   }
}              /*   fin de proc1                                         */

int func1()    /*   début de func1                                       */
{
...            /*   instructions 3                                       */
}              /*   fin de func1                                         */

Dans cet exemple,
i pourra être référencé par instructions1, instructions2 et instructions3,
j pourra être référencé par instructions1 et instructions2,
k pourra être référencé par instructions1 et instructions2,
l pourra être référencé par instructions2.



Bernard Cassagne
1998-12-09