Outils pour utilisateurs

Outils du site


lang:c:condition

Ceci est une ancienne révision du document !


if

Condition classique

if ()
{
  plusieurs instructions;
}
else if ()
  une instruction;
else
  une instruction;

Attention aux else s'il y a des if imbriqués :

if ()
  if ()
    une instruction;
else // Ici, l'indentation est mauvaise car le else correspond au second if.
  une instruction;

switch

Cas courant

Les switch/case agissent comment des goto. Il faut donc mettre un break pour éviter de passer à l'instruction suivante.

int i = 0;
switch (i)
{
  case 0:
    i = 2;
    // Sans break, l'instruction i = 3 sera exécutée.
    // break;
  case 1:
    i = 3;
    break;
  // Plusieurs conditions pour une même exécution de code.
  case 2:
  default:
    break;
}

Les variables déclarées dans un case sont accessibles depuis les case suivants.

int main()
{
  int k = 1;
  switch (k)
  {
    case 0:
      // Impossible car si k == 1, l'instruction i = 0 n'est pas exécutée.
      // int i = 0;
      int i; // Possible car pas d'initialisation.
      break;
    case 1:
    {
      int j = 3;
      break;
    }
    case 2:
    default:
      i = 123;
      // j = 15; // Impossible car en dehors du bloc de déclaration de j.
      break;
  }
}
lang/c/condition.1581919185.txt.gz · Dernière modification : 2020/02/17 06:59 de root