C/Visual C - Como se usa _ecvt????

 
Vista:

Como se usa _ecvt????

Publicado por Kevin (2 intervenciones) el 12/04/2003 21:11:28
Alguien sería tan amble de decirme como funcina la función _ecvt,
porque no se como asignar la cantidad de decimales, es decir, no se como se puede mostrar por pantalla la diferencia entre la parte entera y la parte decimal de un número.

Gracias!!!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Como se usa _ecvt????

Publicado por Carlangas (9 intervenciones) el 13/04/2003 01:22:31
Hola Kevin,

Pues mira, hay un par de funciones que te podrian ayudar:

_ecvt y _fcvt las cuales te hacen la conversion de doble a caracter.

La diferencia entre estas funciones es que mientras en la primera puedes especificar la cantidad de digitos que quieres que te regrese, en la segunda especificas la cantidad de decimales. Bueno, para no enredar las cosas pondre la sintaxis de ambas y un ejemplo, sale?

_ecvt (valor origen, # de digitos que devolvera, puntero posicion decimal, puntero signo)

_fcvt (valor origen, # de decimales que devolvera, puntero posicion decimal, puntero signo)

Ejemplo:

int punto, signo;
char *cadena;
double valor = 77.123456;

cadena = _ecvt(valor, 4, &punto, &signo)

si imprimes los valores de cadena, punto y signo te devolveria lo siguiente:

cadena1 = 7712 (los 4 primeros digitos)
punto = 2 (hay dos numeros enteros, o el punto decimal se encuentra despues de la segunda posición, como lo quieras leer)
signo = 0 (porque el numero es positivo, si fuera negativo valdria 1)

cadena = _fcvt(valor, 4, &punto, &signo)

Ahora, si imprimes los valores de cadena, punto y signo despues de esta otra funcion, te devolveria lo siguiente:

cadena1 = 771234 (6 digitos, 2 enteros y 4 DECIMALES, es decir, te devolvera los enteros mas la cantidad de decimales que hayas especificado)
punto = 2 (hay dos numeros enteros, o el punto decimal se encuentra despues de la segunda posición, como lo quieras leer)
signo = 0 (porque el numero es positivo, si fuera negativo valdria 1) %
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar