Visibilité des identificateurs

Dans le langage C, l'imbrication des instructions composées forme une structure classique de blocs, c'est à dire que les déclarations d'une instruction composée englobée cachent les déclarations des instructions composées englobantes ayant le même nom. De surcroît, les déclarations d'une instruction composée cachent les déclarations de même nom, qui sont à l'extérieur de toute fonction. Exemple :
int i;
int j;

void proc1()
{
int i;      /*   cache le i précédent   */
int k;

if (a > b)
   {
   int i;   /*   cache le i précédent   */
   int j;   /*   cache le j précédent   */
   int k;   /*   cache le k précédent   */

   ...
   }
}



Matthieu Moy 2017-02-08