C/Visual C - Leer cadena - urgente

 
Vista:

Leer cadena - urgente

Publicado por s (12 intervenciones) el 17/05/2005 09:51:38
Buenos días a todos. Tengo un problema. Me pasan una cadena que leen de un fichero y una parte de ésta es un número que puede tener decimales, pero me la pasan como char*. Es decir tengo:
szNumero - char * donde tengo, por ejemplo, 0.000
con esto tengo:
- que averiguar si es de tipo float : para eso me pasan el carácter separador decimal y con la función strchr, lo busco y si lo encuentra es que sí tiene parte decimal y por lo tanto es de tipo float.
- además, tengo que separar las dos partes para comprobar si son numéricos y si son 0, por lo que necesitaría convertirlos a int para las comparaciones, pero al convertirlos, me salen unos número que no me cuadran...
¿Puede alguien ayudarme, por favor?
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
sin imagen de perfil
Val: 11
Ha aumentado su posición en 6 puestos en C/Visual C (en relación al último mes)
Gráfica de C/Visual C

RE:Leer cadena - urgente

Publicado por zz (318 intervenciones) el 18/05/2005 02:26:10
Hi! para convertir a un caracter a entero puedes usar la funcion
atoi (caracter)
ejmplo
int num;
char c='2';
num=atori(c);
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

RE:Leer cadena - urgente

Publicado por Miguel Espinoza (34 intervenciones) el 18/05/2005 06:52:21
mirate este sitio:
http://www.cplusplus.com/ref/cstdlib/atoi.html

Tambien hay funciones como
atol --ASCII to Long
atof --ASCII to Float
strtod --String to Double

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

RE:Leer cadena - urgente

Publicado por el_baina (9 intervenciones) el 22/05/2005 01:49:54
bueno pues la funcion atoi funciona perfectamente, eso te lo aseguro lo que creo yo que puede ser tu proglema es un problema de memoria, comprueba que las cadenas que pasas por parametro a la función atoi son correctas, estos puedes comprobarlo ponendo un printf de la cadena que pasas por parámetro antes de llamar a la función y comprobar que realmente es la que tu quieres enviar y asegurate de que el espacio que utilizan esas cadenas está reservado y no es basura.
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

RE:Leer cadena - urgente

Publicado por s (12 intervenciones) el 23/05/2005 16:47:42
Gracias por todo, chicos. Habéis sido de gran ayuda.
Un saludo.
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