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

Размер структуры   Найти похожие ветки 

← →
JS   (2003-06-04 11:53) [0]

Есть объявление такой структуры:

R = record
a : Smallint;
b : Longint;
end;

sizeof(R) у меня дает 8, а не 6, как ожидается. Почему?

Заранее благодарен.


← →
Morfein ©   (2003-06-04 11:55) [1]

Потому что включено выравнивание данных на границу четырёхбайтную границу. Чтобы выключить, напиши перед структурой {$A-}


← →
Skier ©   (2003-06-04 12:31) [2]

>JS (04.06.03 11:53)
Всё правильно, если учитывать что по умолчанию стоит {$A+}
Поставь {$A-} или пиши packed record


← →
Calm ©   (2003-06-04 15:43) [3]

Учти, что выравненные данные обрабатываются быстрее, чем упакованные. Если будешь интенсивно работать с большими объемами данных, то это может быть критичным.



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

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



Память: 0.45 MB
Время: 0.01 c
14-50503
Scorpx
2003-05-31 10:07
2003.06.16
Анкета


1-50354
Stelius
2003-05-31 17:33
2003.06.16
Delphi + Word & Excel


14-50459
Tomkat
2003-05-29 09:40
2003.06.16
APRO Delphi6


14-50455
GrBob
2003-05-29 11:46
2003.06.16
БД (Беда!!!)


1-50328
Uran
2003-06-03 13:36
2003.06.16
Проверка вхождения цифр




   Наверх