Operatore ternario in C Spiegato

I programmatori usano l’operatore ternario per il processo decisionale al posto di istruzioni condizionali if e else più lunghe.

L’operatore ternario prendere tre argomenti:

  1. Il primo è un confronto di argomento
  2. Il secondo è il risultato su un confronto vero
  3. il terzo è Il risultato su un falso confronto

aiuta a pensare l’operatore ternario come una scorciatoia o scrivere un if-else., Ecco un semplice esempio decisionale che utilizza if ed else:

int a = 10, b = 20, c;if (a < b) { c = a;}else { c = b;}printf("%d", c);

Questo esempio richiede più di 10 righe, ma non è necessario. Puoi scrivere il programma sopra in sole 3 righe di codice usando un operatore ternario.

Sintassi

condition ? value_if_true : value_if_false

L’istruzione valutavalue_if_true secondition è soddisfatta evalue_if_false altrimenti.,

Ecco l’esempio di cui sopra riscritto per utilizzare l’operatore ternario:

int a = 10, b = 20, c;c = (a < b) ? a : b;printf("%d", c);

Output dell’esempio di cui sopra dovrebbe essere:

10

c è impostata su a perché la condizione a < b era vero.

Ricorda che gli argomentivalue_if_true evalue_if_false devono essere dello stesso tipo e devono essere espressioni semplici piuttosto che istruzioni complete.

Gli operatori ternari possono essere nidificati proprio come le istruzioni if-else., Considera il seguente codice:

int a = 1, b = 2, ans;if (a == 1) { if (b == 2) { ans = 3; } else { ans = 5; }} else { ans = 0;}printf ("%d\n", ans);

Ecco il codice sopra riscritto usando un operatore ternario nidificato:

int a = 1, b = 2, ans;ans = (a == 1 ? (b == 2 ? 3 : 5) : 0);printf ("%d\n", ans);

L’output di entrambi i set di codice sopra dovrebbe essere:

Author: admin

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *