92 votes

Que signifie le caractère point d'interrogation ('?') en C++ ?

int qempty()
{
    return (f == r ? 1 : 0);
}

Dans l'extrait ci-dessus, que signifie " ?"? Par quoi pouvons-nous le remplacer ?

3voto

Joe Points 17829

C'est l'opérateur conditionnel.

a ? b : c

C'est un raccourci pour IF/THEN/ELSE.

signifie : si a est vrai, retournez b, sinon retournez c. Dans ce cas, si f==r, retournez 1, sinon retournez 0.

2voto

ActionParsnip Points 524

Le point d'interrogation est l'opérateur conditionnel. Le code signifie que si f==r, alors 1 est renvoyé, sinon, 0. Le code pourrait être réécrit comme suit

int qempty()
{
  if(f==r)
    return 1;
  else
    return 0;
}

ce qui n'est probablement pas la manière la plus propre de le faire, mais qui, espérons-le, vous aidera à comprendre.

2voto

Urmom 123 Points 33

Il se lit comme suit :

If f == r then return 1 else return 0

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X