Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.06.16;
Скачать: 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 вся ветка

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

Наверх




Память: 0.47 MB
Время: 0.022 c
3-50207
гончий
2003-05-26 11:12
2003.06.16
Как правильно удалить поле в таблице MSSQL?


14-50476
DiamondShark
2003-05-30 14:28
2003.06.16
Нужен козырный снимок акулы


14-50524
e}{e
2003-06-01 01:02
2003.06.16
Assembler


3-50244
udf
2003-05-26 17:06
2003.06.16
при попытке обращения к функции ошибка...


14-50491
b@nz@i
2003-05-26 16:09
2003.06.16
Наш ответ Их Fallout у (часть 2)