реклама на сайте
подробности

 
 
> __packed не работает?
slavokhire5
сообщение Jun 11 2015, 06:00
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 50
Регистрация: 31-03-14
Из: Харьков
Пользователь №: 81 165



Привет всем. Заранее извиняюсь за дурацкий вопрос sm.gif

есть такая структура:
Код
typedef __packed struct _gap_init_rp{
    uint8_t            status;
    uint16_t        service_handle;
    uint16_t        dev_name_char_handle;
    uint16_t        appearance_char_handle;
} PACKED gap_init_rp;

....

gap_init_rp resp;


в чем суть проблемы: при работе с msp430f6xxx через IAR результат операции sizeof(resp) == 8 (!!!!), в то же время под stm32l0 также через IAR результат sizeof(resp) == 7 (что я считаю правильным).

И тот и тот IAR свежий, без кряков - kikstart.

Вероятно что-то не так в настройках?

UPD: видимо с __packed iar не очень дружит. или руки у меня кучерявые (вероятнее). помогло #pragma pack(push, 1)...pragma pack(pop)

думаю, тему можно удалять, особой ценности она не имеет

Сообщение отредактировал slavokhire5 - Jun 11 2015, 06:15
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Obam
сообщение Jun 11 2015, 08:19
Сообщение #2


Знающий
****

Группа: Участник
Сообщений: 756
Регистрация: 14-11-14
Пользователь №: 83 663



Цитата(slavokhire5 @ Jun 11 2015, 10:00) *
в чем суть проблемы: при работе с msp430f6xxx через IAR результат операции sizeof(resp) == 8 (!!!!), в то же время под stm32l0 также через IAR результат sizeof(resp) == 7 (что я считаю правильным).


Это объясняет результат?
[attachment=93134:_x6_.png]
IAR C/C++ Compiler User Guide for the Texas Instruments MSP430 Microcontroller Family
Tenth edition: April 2014


--------------------
Пролетарий умственного труда.
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 27th July 2025 - 19:01
Рейтинг@Mail.ru


Страница сгенерированна за 0.0135 секунд с 7
ELECTRONIX ©2004-2016