[C con Clase] La prioridad del operador ?:
Giancarlo
gcdotta en gmail.com
Vie Mayo 28 18:21:53 CEST 2010
Hola a todos
Creía que el operador ?: tenía más prioridad que el de asignación =, pero en el siguiente ejemplo ocurren cosas raras:
int a=1, b=2;
a>b? b : a = 3;
a>b? b : a = 5;
cout << "a=" << a << ", b=" << b << endl;
obtengo la siguiente salida:
a=3, b=2 :-o
que es errónea.
Sin embargo si coloco paréntesis así:
(a>b? b : a) = 3;
(a>b? b : a) = 5;
la salida es:
a=3, b=5
que es correcta.
¿Alguien sabe a que se debe esto?
Gracias por adelantado y un saludo.
Más información sobre la lista de distribución Cconclase