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

Непонятная ошибка компилятора   Найти похожие ветки 

← →
Piero   (2003-10-15 20:32) [0]

Столкнулся с непонятной мне ошибкой:
Создается переменная следующего типа:

TheObject = record
Abonent_Razv: smallint;
Abonent: smallint;
Typ_Obj: smallint;
X: integer;
Y: integer;
Front: smallint;
Glubina: smallint;
Ukrytost: byte;
Xar_Deiat: byte;
Dat_Zas: TDate;
Nomer:integer;

И в 2-х практически одинаковых поектах при вызове sizeoftype,
получается 32 и 40 байт (на самам деле верно - 32), опции проекта одинаковые, директивы компилятора тоже, может кто-то встречался с подобными проблемами


← →
Anatoly Podgoretsky ©   (2003-10-15 20:41) [1]

Наверняка твоя ошибка, с выравниванием.
Ты хочешь всегда 32, так используй packed


← →
Моджахед ©   (2003-10-15 20:49) [2]

packed record, чтобы избежать выравнивания


← →
Моджахедос   (2003-10-15 20:50) [3]

Упс


← →
Моджахед ©   (2003-10-15 20:50) [4]

Упс


← →
Piero   (2003-10-15 21:18) [5]

Спасибо


← →
Piero   (2003-10-15 21:19) [6]

А если я хочу всегда получать 40 байт


← →
Anatoly Podgoretsky ©   (2003-10-15 21:23) [7]

Piero (15.10.03 21:19) [6]
А вот это сложнее, от компилятора зависит



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

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



Память: 0.46 MB
Время: 0.023 c
1-89356
Borealis
2003-10-15 10:42
2003.10.27
Что такое DRF?


1-89302
Abikos
2003-10-08 18:54
2003.10.27
Перерисовка ListView


7-89604
mao
2003-08-01 07:05
2003.10.27
Путь до папки windows


4-89658
Maxim Pshevlotsky
2003-08-22 16:29
2003.10.27
ИЗМЕНИТЬ РАЗМЕР ЗНАЧКА!


1-89297
senya
2003-10-14 10:48
2003.10.27
PDF




   Наверх