Вниз
Скачать: CL | DM;

Ошибка при конвертации....   Найти похожие ветки 

 
Konstantin555   (2006-08-08 17:26) [0]

Не пойму, почему выскакивает ошибка при конвертации и как её исправить...

Вот работающий код:
procedure TForm1.Button2Click(Sender: TObject);
var
s,s1,s2:Extended;
begin
s1:=1.25;
s2:=1.30;
s:=s1+s2;
ShowMessage(FloatToStr(s));
end;


Вот неработающий код:
procedure TForm1.Button2Click(Sender: TObject);
var
s,s1,s2:Extended;
begin
s1:=StrToFloat("1.25");
s2:=StrToFloat("1.30");
s:=s1+s2;
ShowMessage(FloatToStr(s));
end;


На первый взгляд код практически одинаков, идёт обычная конвертация, но во втором случае выскакивает ошибка, связанная с конвертацией...

Как её исправить и из-за чего появляется ошибка?


 
Ega23 ©   (2006-08-08 17:32) [1]

Всё прекрасно отработало, показало 2.55


 
Desdechado ©   (2006-08-08 17:32) [2]

читать про региональные настройки, DecimalSeparator, Format()


 
StriderMan ©   (2006-08-08 17:33) [3]

от региональных настроек все зависит. у тебя наверное разделитель целой и дробной частей - запятая.


 
Konstantin555   (2006-08-08 18:01) [4]

Desdechado, StriderMan, спасибо! Изменил разделитель в региональных настройках на точку и всё заработало!


 
Desdechado ©   (2006-08-08 18:24) [5]

>  Изменил разделитель в региональных настройках
Самое кривое решение.
Юзер имеет право под себя настроить, как ему нравится. А ты должен реализовать независимость своей программы от этого права.
См. еще раз [2]



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.026 c
2-1157016107
RebroFF
2006-08-31 13:21
2006.09.17
Форматирование DBGrid


4-1147774550
GERDA
2006-05-16 14:15
2006.09.17
Блокировка директории


2-1156421388
Priest
2006-08-24 16:09
2006.09.17
Как определить где подвисает программа


2-1156710099
ffo
2006-08-28 00:21
2006.09.17
Как правильно зарегистрировать класс?


2-1156457787
simona4
2006-08-25 02:16
2006.09.17
memo1.lines.add()




   Наверх