Убрать выравнивание полей структур в си

Тема в разделе "WASM.BEGINNERS", создана пользователем Android, 30 июл 2006.

  1. Android

    Android New Member

    Публикаций:
    0
    Регистрация:
    24 авг 2003
    Сообщения:
    183
    Адрес:
    Ukraine
    Вопрос касается синтаксиса си, но все же решил задать на этом форуме.
    Оформляю структуру
    struct mystruct
    {
    char bType;
    DWORD dwVal;
    }
    и компилятор первый байт округляет до 4 байт, а дальше уже естественно ничего не работает...

    есть ли способ указать компилятору, что именно эту структуру не надо выравнивать
     
  2. rmn

    rmn Well-Known Member

    Публикаций:
    0
    Регистрация:
    23 ноя 2004
    Сообщения:
    2.347
    Код (Text):
    1. #pragma pack(push, 1)
    2. struct mystruct
    3. {
    4.    char bType;
    5.    DWORD dwVal;
    6. }
    7. #pragma pack(pop)
     
  3. Android

    Android New Member

    Публикаций:
    0
    Регистрация:
    24 авг 2003
    Сообщения:
    183
    Адрес:
    Ukraine
    спасибо