[ Foro de C++ ]

Operadores

19-Feb-2014 16:01
Invitado (Operador condicional)
1 Respuestas

Estoy aprendiendo el curso de c++ y  quiziera que me explicaran esto

condicion ? valor1 : valor2;
porque el signo de pregunta ahi, y que funcion tiene esto ahi ":"


19-Feb-2014 22:52
Nacho Cabanes (+30)

Textualmente, del curso:

En C y C++ hay otra forma de asignar un valor según se dé una condición o no. Es el "operador condicional" ? : que se usa

condicion ? valor1 : valor2;

y equivale a decir "si se cumple la condición, toma el valor v1; si no, toma el valor v2". Un ejemplo de cómo podríamos usarlo sería

numeroMayor = (a>b) ? a : b;



Es decir, el signo de la pregunta es parte de la sintaxis del operador condicional, equivale al "if", y el símbolo de "dos puntos" equivale a "else".

Es lo mismo escribir

 
numeroMayor = (a>b) ? a : b;
 


que

 
if  (a>b) numeroMayor = a; else numeroMayor = b;
 







(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)