![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Привет всем. Как перевести из 16-го числа в дробное десятичное. Например есть число A027AFDF5D984840 из него получаем 49.1903648. Знаю что в C# есть такая функция BitConverter.ToDouble, а как реализовать это на Delphi?
|
#2
|
|||
|
|||
![]() Есть функция StrToInt(); Так вот, если в начале строки с числом поставить x или $, то она преобразует шестнадцатиричное в десятичное.
P.S. Сам обалдел, когда узнал ![]() |
Этот пользователь сказал Спасибо PS11011010 за это полезное сообщение: | ||
nixel (28.04.2012)
|
#3
|
||||
|
||||
![]() Цитата:
А я как лох исходника читал... Некоторые программисты настолько ленивы, что сразу пишут рабочий код. Если вас наказали ни за что - радуйтесь: вы ни в чем не виноваты. |
#4
|
|||
|
|||
![]() Дело в том что strtoint('$AD10') переводит в целое число. Для дроби надо использовать
Код:
procedure TForm1.Button1Click(Sender: TObject); const d8: array [0..7] of byte = ($A0,$27,$AF,$DF,$5D,$98,$48,$40); var D:double; begin D:=Double(d8); showmessage(floattostr(D)); end; |