![]() |
String to Float
Buenos días chicos,
Felices fiestas a todos! Veréis, tengo un problema que no consigo ver y seguro que es una chorrada. Estoy ahora mismo trabajando con Delphi 2010. Tengo una variable string que es por ejemplo 6,99, yo esta variable la quiero guardar en otra variable double, pero me guarda siempre un 0 Código:
varHe probado a insertar directamente el 6,99 en cantidad, pero entonces la depuración se salta esa línea, como si no fuera válida. Código:
varNo se que se me está pasando, será que llevo mucho seguido mirando código, no se. Cualquier ayuda os estaría muy agradecido. Un saludo |
¿Y no muestra ningún error?
![]() |
No, ninguno, simplemente hago un seguimiento de la variable y se queda con valor 0.
Y en el segundo caso, cuando intento directamente asignar el 6,99 a la variable, en modo depuración paso a paso, se salta esa línea. |
Es que lo que cuentas no puede ser.
Crea un proyecto nuevo, limpio y prueba. Antes reinicia el ordenador :D |
Ok, seguiré avanzando el proyecto y cuando reinicie probaré otra vez a ver, porque no lo entiendo, tengo otra parte del proyecto donde estoy recuperando del ini un valor y lo guardo en una variable double usando strtofloat y ahí me lo está guardando bien.
Seguramente sea como dices y algo haya quedado mal. En cuanto reinicie y pruebe otra vez os comento que tal. Gracias! |
Asegurate de probar con la variable seteándola como '6,99' y como '6.99'. StrToFloat toma la configuración de Windows, por lo tanto, si tenés configurado el separador de decimales como '.', entonces '6,99' devolverá un error. Habitualmente se configura la coma ',' como separador de decimales y el punto '.' como separador de miles. Al menos en Argentina (país donde resido) es así.
Saludos |
Si si, eso ya lo había probado, con la coma me da error, lo normal.
He probado en un proyecto limpio y funciona perfectamente, no lo entiendo, dentro del proyecto que estoy modificando no funciona pero fuera si. |
¿No sería que si no usas la variable posteriormente no se ve bien el valor en el depurador? Esas cosas pasan.
Saludos |
No porque si que la uso posteriormente para cálculos, pero claro, como coge 0, no me vale.
Voy a tratar de pasarlo todo a un proyecto nuevo a ver. |
| La franja horaria es GMT +2. Ahora son las 07:16:51. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi