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

Функция перевода чисел из 10-ой системы в 16-ю   Найти похожие ветки 

← →
Pliajnik   (2003-04-30 23:55) [0]

Дайте пожалуйста...


← →
default ©   (2003-04-30 23:58) [1]

function IntToHex(Int: LongWord): String;
const
MasDig = "0123456789ABCDEF";
var
i, NextHexDigit: Byte;
Priem: LongWord;

begin

if Int = 0 then begin Result := "0"; Exit; end;

for i := 1 to 8 do
begin
asm
mov Priem,0
mov ecx,Int
shld Priem,ecx,4
shl Int,4
mov al,byte ptr Priem
mov NextHexDigit,al
end;

Result := Result + MasDig[NextHexDigit + 1];
end;

while Result[1] = "0" do Delete(Result, 1, 1);

end;

кстати довольно оригинальная...


← →
Pliajnik   (2003-05-01 00:51) [2]

спасибо


← →
Anatoly Podgoretsky ©   (2003-05-01 01:29) [3]

IntToHex(StrToInt(S),N)


← →
Ihor Osov'yak ©   (2003-05-01 01:39) [4]

1. Если под числами понимать строки - то см. Anatoly Podgoretsky © (01.05.03 01:29) с маленьким дополнением:

StrToInt имеет обычай генерировать ексепшен, если строку нельзя преобразовать в интеджер. Поэтому этот код может и придется брать в try except end, в зависимости от специфики задачи.
Или пользовть Val с временной переменной вместо StrToInt

2. Если под числами понимать integer и иже с ними - то и преоьразовывать как-бы ничего и надо :-)



← →
Anatoly Podgoretsky ©   (2003-05-01 11:23) [5]

А если понимать integer то не приходится говорить о десятичной системе, кроме случая двоично-десятичных чисел.


← →
sevlad   (2003-05-01 11:41) [6]

2 Ihor Osov"yak ©
try except end емеет смысл использовать если нужно уведомить об ошибке (или залогировать ошибку)
А если надо проглатить в лубом случае хоть что-то
IntToHex(StrToIntDef(S, что-то),N)



← →
Ihor Osov'yak ©   (2003-05-01 12:57) [7]

2 sevlad (01.05.03 11:41)

Вот в любом случае и не проглотишь, ибо при определенных входных данных может быть ексепшен. А его обрабатывать надо. Другой вопрос, с какой целью.

2 Anatoly Podgoretsky © (01.05.03 11:23) :-)


← →
default ©   (2003-05-01 13:06) [8]

парню надо "пример" а не юзать бесконечно ф-ции написанные профессионалами Borland


← →
sevlad   (2003-05-01 15:53) [9]

Ihor Osov"yak ©
Обрабатывать надо конечно, но если обработка заключаеться в уставке какого-то значения по умолчанию, без уведомления про ошибку - то почему бы не написать одну строчку как я сделал?



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

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



Память: 0.47 MB
Время: 0.013 c
14-46894
Soft
2003-04-24 18:27
2003.05.15
Религия это клево


1-46722
Сергеич
2003-05-04 19:55
2003.05.15
ХЕЛП! Открытие файлов.


14-46897
Rise
2003-04-28 11:54
2003.05.15
МОжно ли создать сайт на Delphi?


14-46958
KA-87
2003-04-26 20:34
2003.05.15
Нужен хороший текстовый движок..


9-46556
Jedi Knight
2002-11-11 15:01
2003.05.15
Wolfenstein Source




   Наверх