Форум: "Основная";
Поиск по всему сайту: 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.026 c
6-42540           Станислав             2001-10-16 11:47  2002.01.14  
Время сервера


3-42339           Sanych                2001-12-11 09:40  2002.01.14  
Работа с удаленной бд


1-42444           Brand                 2001-12-24 00:54  2002.01.14  
Gif на форме


1-42463           Тарас                 2001-12-25 11:26  2002.01.14  
Как справиться с проблемкой


4-42598           Landgraph             2001-11-12 14:22  2002.01.14  
Хватаем обращение