Operador ternario en C explicado

Los programadores utilizan el operador ternario para la toma de decisiones en lugar de sentencias condicionales if Y else más largas.

el operador ternario toma tres argumentos:

  1. El primero es un argumento de comparación
  2. El segundo es el resultado de una comparación verdadera
  3. El tercero es el resultado de una comparación falsa

ayuda a pensar en el operador ternario como una forma abreviada o escribir una declaración if-else., Este es un ejemplo simple de toma de decisiones usando if y else:

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

Este ejemplo toma más de 10 líneas, pero eso no es necesario. Puede escribir el programa anterior en solo 3 líneas de código usando un operador ternario.

Sintaxis

condition ? value_if_true : value_if_false

La instrucción se evalúa a value_if_true si condition se cumple, y value_if_false en caso contrario.,

Aquí está el ejemplo anterior se reescribe para utilizar el operador ternario:

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

la Salida del ejemplo anterior será:

10
c es igual a a, debido a la condición de a < b era cierto.

recuerde que los argumentos value_if_truey value_if_false deben ser del mismo tipo, y deben ser expresiones simples en lugar de instrucciones completas.

los operadores ternarios pueden anidarse al igual que las sentencias if-else., Considere el siguiente código:

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

Aquí está el código anterior reescrito usando un operador ternario anidado:

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

la salida de ambos conjuntos de código anterior debe ser:

Author: admin

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *