Форум: "Основная";
Текущий архив: 2004.06.13;
Скачать: [xml.tar.bz2];
ВнизКак узнать, сколько разрядов нужно числу дать при 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 вся ветка
Форум: "Основная";
Текущий архив: 2004.06.13;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 1.701 c