|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
16.11.2012, 16:35 | #1 |
Регистрация: 16.11.2012
Сообщений: 4
|
выравнивание структур c++ (codegear)
Никак не получается использовать структуру без выравнивания.
пробовал: Код HTML:
#pragma pack(1) Код HTML:
#pragma pack(push, 1) Код HTML:
Options - Advanced Compiller - Data alignment = byte Вопрос КАК упаковать структуру, чтобы вообще не вставлялись байты выравнивания? Система: Код HTML:
64 битная Windows 7 Pro Embarcadero® C++Builder® XE2 Единственное не понял, что делать с #pragma option -an , а так, вроде, все испробовал. Код HTML:
// #pragma pack(1) #pragma pack(push,1) struct s_frameDevice { ... }; // #pragma pack(pop) #pragma pack(pop) typedef union u_dataDevice { struct s_frameDevice s; U8 ch[BUF_FRAME_RX]; }T_DATA_DEVICE; Последний раз редактировалось ohmic; 16.11.2012 в 17:38. |
16.11.2012, 17:25 | #2 |
Регистрация: 16.11.2012
Сообщений: 4
|
Не может же быть такого, ведь везде написано, что можно без байтов выравнивания упаковать, а тут ну нифига не получается. Значит что-то упускаю, что?
Размер получившейся структуры узнаю по конструкции Код HTML:
sizeof(T_DATA_DEVICE); Последний раз редактировалось ohmic; 16.11.2012 в 17:37. |
17.11.2012, 11:47 | #3 |
Форумчанин
Регистрация: 26.03.2010
Сообщений: 538
|
А размер, что ты получаешь вызовом sizeof(T_DATA_DEVICE) случайно не равен sizeof(U8)*BUF_FRAME_RX ?
Единственный способ стать умнее - играть с более умным противником.
|
17.11.2012, 22:33 | #4 |
Регистрация: 16.11.2012
Сообщений: 4
|
|
20.11.2012, 15:00 | #5 |
Регистрация: 16.11.2012
Сообщений: 4
|
Я балбес, в при объявлении полей структуры использовал "int"
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
CodeGear 2009 - ошибка компиляции | Dark_Spirit | БД в Delphi | 4 | 16.02.2010 17:40 |
CodeGear Delphi 2010 | andreibtzt | Софт | 1 | 25.08.2009 18:06 |
Чудит CodeGear 2009 | Altera | Софт | 10 | 15.05.2009 08:09 |
CodeGear в школах России | GN_ | Свободное общение | 2 | 02.02.2008 09:34 |
CodeGear Rad Studio | AVALS | Софт | 0 | 17.12.2007 19:43 |