Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.01.14;
Скачать: [xml.tar.bz2];




Вниз

помогите разобраться! 


ev   (2001-12-22 19:38) [0]


type
Trec = record
time: string[9];
bg: int64;
sz: longint;
end;
var
xxx: Trec;

Почему sizeof(xxx) равно 32 ?



Anatoly Podgoretsky   (2001-12-22 19:54) [1]

Выравнивание



Иван Шихалев   (2001-12-22 19:56) [2]

Вообще-то должно быть 24 при всем выравнивании.



Anatoly Podgoretsky   (2001-12-22 23:30) [3]

От версии зависит



Иван Шихалев   (2001-12-22 23:33) [4]

Что D6 уже выравнивает по параграфу? А зачем?



Sail   (2001-12-23 04:18) [5]

Бог его знает, зачем... А ты поставь ради интереса
time: string[2] //а не 9
:-)



Barbarian   (2001-12-23 16:44) [6]

Для того, чтобы запись имела размер, равный сумме длин переменных в нее входящих, необходимо использовать конструкцию вида:

Trec2 = packed record
time: string[9];
bg: int64;
sz: longint;
end;



ev   (2001-12-26 16:27) [7]

> Barbarian
действительно работает !!!! спасибо..... :)



Anatoly Podgoretsky   (2001-12-26 17:03) [8]

Иван Шихалев © (22.12.01 23:33)
Наверно для оптимизации или с конфейерами или с пентиумом, а может у них запросы далее на 64 бита, по крайней мере я читал про выравнивание на границу параметра, сам не проверял, да и зачем не мое это дело, а компилятора.




Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.01.14;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.015 c
7-42588           Tune                  2001-09-30 14:33  2002.01.14  
Мастера, подскажите как прочитать заголовок файла, чтобы можно было править отдельные биты?


3-42355           madx                  2001-12-08 22:11  2002.01.14  
Ребят, подскажите начинающему...


4-42596           eSc!                  2001-10-29 23:19  2002.01.14  
LockWorkstation();


3-42359           a1st                  2001-12-11 13:49  2002.01.14  
Помогите восстановить primary-индексы


7-42585           fsp                   2001-09-29 21:15  2002.01.14  
sender:Tobject