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

Как узнать, сколько разрядов нужно числу дать при IntToHex   Найти похожие ветки 

← →
Aleksandr.   (2004-06-02 16:26) [0]

Есть у меня сомнения, глядя на изменения от версий к версиям Делфи, что просто зашитыми размерами (4 для integer, 8 для longint и т.д.) будет не слишком надежно. Нужно, чтобы строка, образованная вызовом IntToHex, содержала количество символов, соответствующее максимальному 16-ричному количеству.


← →
Reindeer Moss Eater ©   (2004-06-02 16:28) [1]

SizeOf отменили?


← →
Тимохов ©   (2004-06-02 16:30) [2]

longint - 4 bytes


← →
Anatoly Podgoretsky ©   (2004-06-02 16:36) [3]

Aleksandr.   (02.06.04 16:26)  
У тебя Д1?, раз 4 для integer, для этого смотри [1]

Тимохов ©   (02.06.04 16:30) [2]
integer на текущий момент тоже.


← →
WebErr ©   (2004-06-02 17:41) [4]


> integer на текущий момент тоже.

Надолго ли? ...


← →
Digitman ©   (2004-06-02 17:54) [5]


> Aleksandr


SizeOf(Value) - число байт, занимаемое Value
1 байт - это два 16-ричных символа

решение до смешного просто :

IntToHex(Value, SizeOf(Value)*2)


← →
GuAV ©   (2004-06-02 20:35) [6]


> Надолго ли? ...

Интересно, а в win64 sizeof(integer)=sizeof(pointer)=8 ?
..=sizeof(TObject)=sizeof(TDynArray)=sizeof(TProcedure)... ?


← →
Aleksandr.   (2004-06-02 20:44) [7]

2 Digitman:
 Спасибо.


← →
Anatoly Podgoretsky ©   (2004-06-02 21:09) [8]

WebErr ©   (02.06.04 17:41) [4]
Не важно, не надо просто использовать жесткозакодированные значения для нефундаментальных типов и для них тоже не надо. В свое время очень много народу на этом погорело, особенно на Си

Мыжика размер зависит не от ОС, а от версии компилятора, используя Д1 на Win32 интегер от этого не становится 32 биным



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

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



Память: 0.46 MB
Время: 0.023 c
1-1086165837
Фдуч
2004-06-02 12:43
2004.06.13
Вызов формы из процесса


11-1075121861
sams
2004-01-26 15:57
2004.06.13
Наследование


9-1076826250
DM_A
2004-02-15 09:24
2004.06.13
Как переместить объект(X,Y) Пажалуйста подробнее


1-1086119585
Lvs
2004-06-01 23:53
2004.06.13
Время


4-1083946057
SergeyM
2004-05-07 20:07
2004.06.13
CD-ROM




   Наверх