Que signifie cette ligne de code

Résolu
Bonjour,

Pouvez SVP m'expliquer cette ligne de code j'ai trouvé dans un programme.
j'ai pas compris le rôle de "?" et de ":"

Var1=Var2>=val?Var2:val;

Merci de votre aide.

2 réponses

  1. Modérateur
    C'est l'opérateur ternaire (voir Langage C - Les structures conditionnelles)
    Ces deux codes sont équivalents :

    Var1 = Var2>=val ? Var2 : val;

    if (Var2>=val)
    Var1 = Var2;
    else
    Var1 = val;

    La confiance n'exclut pas le contrôle