Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.05.07;
Скачать: CL | DM;

Вниз

HexToBin(), BinToHex()   Найти похожие ветки 

 
Beni ©   (2006-04-18 18:49) [0]

Приведите, пожалуйста, пример работы функций
BinToHex(Buffer: PAnsiCha; Text: PAnsiChar; BufSize: Integer)
и
HexToBin(Text: PAnsiChar; Buffer: PAnsiChar; BufSize: Integer)
Никак не могу понять, что нужно заносить в Buffer и BufSize?!


 
Джо ©   (2006-04-18 18:59) [1]

var
 // массив размером 8 байт
 // (два байта в массиве на каждый байт в V)
 HexString: array [0..7] of Char;
 V: Integer;
begin
 V := 12345;
 BinToHex(@V,HexString,SizeOf(V));
 ShowMessage (HexString)
end;

С обратной функцией аналогично. Читай описание в Справке.


 
kilkennyCat ©   (2006-04-18 19:02) [2]

SizeOf(V)*2


 
Джо ©   (2006-04-18 19:13) [3]

> [2] kilkennyCat ©   (18.04.06 19:02)
> SizeOf(V)*2

Нет, нужно указывать размер буфера, передаваемого первым параметром.


 
kilkennyCat ©   (2006-04-18 19:17) [4]

да, верно, перепутал с обратной, но в примере все равно 10 в 8 не влезет.


 
Джо ©   (2006-04-18 19:21) [5]

> но в примере все равно 10 в 8 не влезет.

Влезет :-)
V это 4 байта (Integer). Для хранения каждого байта в текстовом шестнадцатерич. виде нужно 2 байта (от $00 до $FF). Итого — 8 байт.


 
Anatoly Podgoretsky ©   (2006-04-18 19:25) [6]

Джо ©   (18.04.06 19:21) [5]
Но у тебя то четыре, а не восемь.


 
Anatoly Podgoretsky ©   (2006-04-18 19:26) [7]

И в конце концов, более верная форма не
SizeOf(V)*2
а
SizeOf(V)*SizeOf(Char)
а то чревато.


 
Джо ©   (2006-04-18 19:28) [8]

> [6] Anatoly Podgoretsky ©   (18.04.06 19:25)
> Джо ©   (18.04.06 19:21) [5]
> Но у тебя то четыре, а не восемь.

У "меня" восемь: HexString: array [0..7] of Char;


 
Anatoly Podgoretsky ©   (2006-04-18 19:29) [9]

Я не прав, третий параметр размер источника данных, а не буфера для результата, так что код SizeOf(V) верный.


 
Anatoly Podgoretsky ©   (2006-04-18 19:30) [10]

Джо ©   (18.04.06 19:28) [8]
Я говорил про SizeOf(V), но я уже поправился. Код абсолютно верный.


 
kilkennyCat ©   (2006-04-18 19:40) [11]

а я ваще тормоз..


 
Beni ©   (2006-04-20 09:08) [12]

Всем спасибо за помощь



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

Текущий архив: 2006.05.07;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.041 c
11-1125465671
Windows
2005-08-31 09:21
2006.05.07
Системные горячие влавиши в КОЛ и МСК


15-1144851938
RomanH
2006-04-12 18:25
2006.05.07
Переход с Delphi7 на Delphi2005


2-1145331107
Ezorcist
2006-04-18 07:31
2006.05.07
Сверуть все окна!


2-1145339802
Ярослав
2006-04-18 09:56
2006.05.07
Помогите, не знаю в чем дело


2-1145025876
dera
2006-04-14 18:44
2006.05.07
Что неправильно в запросе?