![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
помогите разобраться! [D6, Win2k]
ev © (2001-12-22 19:38:00)
type
Trec = record
time: string[9];
bg: int64;
sz: longint;
end;
var
xxx: Trec;
Почему sizeof(xxx)равно 32?
Anatoly Podgoretsky (2001-12-26 17:03:00) [1]Иван Шихалев © (22.12.01 23:33)
Наверно для оптимизации или с конфейерами или с пентиумом, а может у них запросы далее на 64 бита, по крайней мере я читал про выравнивание на границу параметра, сам не проверял, да и зачем не мое это дело, а компилятора.
ev (2001-12-26 16:27:00) [2]> Barbarian
действительно работает !!!! спасибо..... :)
Barbarian (2001-12-23 16:44:00) [3]Для того, чтобы запись имела размер, равный сумме длин переменных в нее входящих, необходимо использовать конструкцию вида:
Trec2 = packed record
time: string[9];
bg: int64;
sz: longint;
end;
Sail (2001-12-23 04:18:00) [4]Бог его знает, зачем... А ты поставь ради интереса
time: string[2] //а не 9
:-)
Иван Шихалев (2001-12-22 23:33:00) [5]Что D6 уже выравнивает по параграфу? А зачем?
Anatoly Podgoretsky (2001-12-22 23:30:00) [6]От версии зависит
Иван Шихалев (2001-12-22 19:56:00) [7]Вообще-то должно быть 24 при всем выравнивании.
Anatoly Podgoretsky (2001-12-22 19:54:00) [8]Выравнивание