[C con Clase] otra duda capitulo 9, ejercicios

Salvador Pozo salvador en conclase.net
Jue Sep 9 15:42:41 CEST 2010


El pasado 2010-09-09 13:23:16, mai escribió:
 
m> buenos días,
m> no me ha quedado muy clara la jerarquía de los tipos, en el caso
m> (ejercicio1):
m> float b = 19.3;
m> double d = 64.8;
m> el resultado de b+d sería float o double? creo q double pero no tengo claro
m> por qué?. 

Hola:

Por la regla tercera: Si un operando es de tipo double, el otro se convertirá a double.

Las reglas expuestas en el capítulo 9 (con pequeñas variaciones dependiendo del compilador) se aplican una por una en cada expresión, hasta que los dos operandos son del mismo tipo.

Hay que tener en cuenta que cada operador binario afecta a dos operandos, de modo que cada operación se trata por separado.

En el ejemplo en que hay varios operandos: d = n + a + r; 

Se toman de dos en dos, primero n y a, después el resultado de (n+a) y r, y finalmente d con el resultado de (n+a+r).

En el caso de operadores unitarios no hace falta aplicar estas reglas, ya que evidentemente, el resultado siempre será del mismo tipo que el operando.

Hasta pronto. 

-- 
Salvador Pozo (Administrador)
mailto:salvador en conclase.net


Más información sobre la lista de distribución Cconclase