salut
j'arrive pas a comprendre comment cette instruction sera traitée par le compilateur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 int a=16 , b=8, c=4; c* = !(a%2) ? (a-- , b++) : 1 ;
salut
j'arrive pas a comprendre comment cette instruction sera traitée par le compilateur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 int a=16 , b=8, c=4; c* = !(a%2) ? (a-- , b++) : 1 ;
C'est un exercice scolaire ?
« … ? … : … » est un opérateur ternaire. Il s'agit d'une sorte de if-then-else condensé. Si l'expression en première position est vraie (différente de 0), alors l'expression entière prendra la valeur du deuxième terme. Sinon, ce sera celle du troisième.
Pour le reste, je te laisse chercher volontairement. Fais une proposition justifiée ici. On te dira si c'est bon ou pas, et pourquoi.
Essaye de mettre l'expression sous la forme if ... else ... et tu verras que tu trouveras la solution tout seul.![]()
salut
déchiffre ces ligne et tu va trouvé la solution :
Opérateur virgule
Syntaxe :
expression : expression1 , expression2
Sémantique :
expression1 est évaluée et sa valeur ignorée. expression2 est évaluée et sa valeur est la valeur de l'expression virgule.
Opérateur conditionnel
Syntaxe :
expression : expression1 ? expression2 : expression3
Sémantique :
expression1 est évaluée et doit délivrer une valeur de type entier. Si cette valeur est :
-
non nulle, expression2 est évaluée et le résultat est la valeur de l'expression conditionnelle.
-
nulle, expression3 est évaluée et le résultat est la valeur de l'expression conditionnelle.
Ma Chaine youtube : https://www.youtube.com/@medBkDev
Mes Articles
guide du débutant pour apprendre à programmer en Java -
FAQ Java et les cours et tutoriels Java
salut
merci bcp pour vos réponse
maintenant j'ai testé ce code sur les pointeurs
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 char *p1 = "Bonjour"; char *p2 = "Bonjour"; printf("%d &p1",p1); printf("\n%d &p2",p2);
mais j'arrive pas a comprendre pourquoi p2 pointe vers la même adresse que p1 malgré que j'ai pas fait p2 = p1 ?
Partager