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

Вниз

Расположение в памяти структур   Найти похожие ветки 

 
deplhi   (2006-08-22 15:54) [0]

К примеру есть у мну структура:
struct = record
 arr: array[1..33] of char;
 g: word;
 s: longword;
end;
Насколько я знаю в памяти эта структура расположена последовательно. т.е. 33 байта для массива , за ней сразу 2 байта для типа ворд и 4 для лонгворд, я прав???
И вообще, можно мне как-нить эту структуру получить в виде последовательности байт в одной переменной???


 
Ega23 ©   (2006-08-22 16:03) [1]


> struct = record

struct = packed record


 
guav ©   (2006-08-23 00:15) [2]

> Насколько я знаю в памяти эта структура расположена последовательно.
> т.е. 33 байта для массива , за ней сразу 2 байта для типа
> ворд и 4 для лонгворд, я прав???

Обычно нет, может быть да - зависит от опций и директив компилятора. см {$A}.
Чтобы было грантированоо да - использовать packed, см [1]


> И вообще, можно мне как-нить эту структуру получить в виде
> последовательности байт в одной переменной???

Да.


 
Anatoly Podgoretsky ©   (2006-08-23 00:36) [3]

Не прав, при таком обхявлении действуют правила выравнивания элементов, тебе надо из [1]
И на всякий случай сменить тип char это generic тип, поэтому размер в один байт не гарантируется.


 
Ketmar ©   (2006-08-23 00:42) [4]

> [3] Anatoly Podgoretsky ©   (23.08.06 00:36)
кстати, и перед array можно добавить packed. для вящего "понятизма". да и мало ли что...


 
DiamondShark ©   (2006-08-23 00:58) [5]

Type
 Packedmania = packed file of packed array [byte] of packed record a: packed set of byte end;


 
guav ©   (2006-08-23 01:22) [6]

> [5] DiamondShark ©   (23.08.06 00:58)

LOL

Ещё можно добавить:
Type
Packedmania = packed class a: packed file of packed array [byte] of packed record a: packed set of byte end; end;



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

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

Наверх




Память: 0.47 MB
Время: 0.029 c
9-1115392165
OSokin
2005-05-06 19:09
2006.09.10
А не устраивать ли нам небольшие конкурсы по кодингу? (ч.4)


15-1155814241
lorn
2006-08-17 15:30
2006.09.10
cryatal report-delphi-w2k


15-1155559772
rimm
2006-08-14 16:49
2006.09.10
Потоки и поточные преложения...


2-1156249993
AlexanderMS
2006-08-22 16:33
2006.09.10
Поддержка плагинов.


2-1156148882
Очень грустный человек
2006-08-21 12:28
2006.09.10
Delphi и работа с DBF