[C con Clase] Conversión de tipos

Salvador Pozo salvapozo en gmail.com
Vie Abr 24 21:21:20 CEST 2015


El pasado 2015-04-24 17:57:52, Alejandro D. escribió:
 
AD> Hola, 
AD> me he leído varias veces el capítulo 9 sobre conversión de tipos y no consigo aclararme. Las reglas del 1 al 10 que explica tienen mas peso según aumenta su número? Por ejemplo con las reglas 3 y 4: qué pasa si tengo un operando que es double y otro que es float? Cual predomina, el double sobre el float o al revés? 

Hola:
No es cuestión de peso, sino de orden. Las reglas se aplican en el orden en que están escritas.
Si un operando es double y otro float, se aplica la regla 3, y el operando float se convierte a double.
El objetivo es que los dos operandos sean del mismo tipo.
Por ejemplo, si uno es unsigned char y el otro long, se aplica la regla 1 sobre el primero, que se convierte en unsigned int. Y después se aplica la regla 8 para convertirlo de unsigned int a long.
Siempre se toman los operandos dos a dos, y se intenta aplicar la primera regla que se pueda a uno de los operandos. 
Si después de aplicar la regla los dos operandos no son del mismo tipo, se repite el proceso.

Espero haber aclarado el tema.
Hasta pronto.


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