2016-10-25 6 views
0

Я попытался создать исходный код Windows в XCode6.4. Но найдите проблему выравнивания. Я установил 8-битное выравнивание с помощью «#pragma pack (x)» в качестве окон по умолчанию, но, похоже, не работает.XCode 32-бит не может установить выравнивание по 8bytes?

XCode принимать только 1, 2, 4, но если установить до 8, еще же с 4

Является ли это ошибка XCode?
Ниже приведен мой код.

#pragma pack(8) 
typedef struct 
{ 
    char cField; 
    double dField; 
}ppkStructure; 

int nSize = sizeof(ppkStructure); 

Я знаю, что могу использовать атрибут ((выровнен (8))), но это не решение проблемы. Мне нужно изменить структуру тысяч, если это так.

ответ

0

Если установить блок (1), nРазмер: 9, набор упаковки (2), nРазмер: 10 набор упаковки (4), nРазмер: 12 набор упаковки (8), nРазмер: 12 до сих пор. То же, что и в упаковке (4). Нет как ожидаемое значение: 16.