Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.01.14;
Скачать: CL | DM;

Вниз

помогите разобраться!   Найти похожие ветки 

 
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 бита, по крайней мере я читал про выравнивание на границу параметра, сам не проверял, да и зачем не мое это дело, а компилятора.



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

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

Наверх




Память: 0.48 MB
Время: 0.01 c
7-42584
Leon
2001-08-23 22:17
2002.01.14
Серийный номер материнской платы


7-42577
Максим
2001-10-01 10:44
2002.01.14
Железо и софт


3-42386
Oleg_K
2001-12-08 12:42
2002.01.14
Работа со строками в DBGrid


4-42637
DDN
2001-11-09 23:52
2002.01.14
VirtualQuery


4-42600
wHammer
2001-11-13 16:16
2002.01.14
Мастера, помогите в поиске решения!