[C con Clase] casting reenviado
rodolfo rosso paz
rodolforossopaz en hotmail.com
Jue Mayo 10 04:01:34 CEST 2007
Hola, creo que mi anterior correo no salio, gracias a Steven y a Pedro por
lo de las precedencias, asunto aclarado.
Tengo una duda respecto al casting:
Cuando corro este programa
double arregloDobles[] = {1.1, 2.2, 3.3, 4.4, 5.5};
cout << setprecision(2)<< fixed;
cout << " Valor Resta Doble Entero" << endl;
for (int i = 0; i<5 ; i++)
{
int resta = i+1;
cout << setw(6) << arregloDobles[i] << setw(6) << resta;
double doble = (arregloDobles[i]-resta)*10;
cout << setw(6) << doble;
int entero = static_cast<int>(doble);
cout << setw(7) << entero << endl;
}
El resultado es el siguiente:
Valor Resta Doble Entero
1.1 1 1.0 1
2.2 2 2.0 2
3.3 3 3.0 2 ------> ¿ que paso aqui ?
4.4 4 4.0 4
5.5 5 5.0 5
pregunta: ¿porque en la tercera linea el valor entero sale 2 en vez de 3
como se esperaba ?
lo he compilado con dev-cpp y con visual c++ 6.0 y el resultado es el mismo,
¿ alquien tiene idea de que es lo que estoy haciendo mal ?
gracias de antemano
Rodolfo
_________________________________________________________________
Charla con tus amigos en línea mediante MSN Messenger:
http://messenger.latam.msn.com/
Más información sobre la lista de distribución Cconclase