У меня есть этот пример кода, который я украсил пакетом, чтобы убедиться, что его размер составляет 5 байт (4 для int и 1 для char).
но он распечатывает, что размер структуры составляет 8 байт.
#pragma pack push
#pragma pack 1
struct mystruct
{
int x;
char y;
};
#pragma pack pop
//static_assert(sizeof(mystruct) == 5, "Size of mystruct should be 5 byte.");
int _tmain(int argc, _TCHAR* argv[])
{
int x=sizeof(mystruct);
printf("size of struct is %d\n",x);
return 0;
}
Почему te pck не работает?
Как убедиться, что размер структуры всегда равен 5.
C
илиC++
? Есть разница. Пожалуйста, просто выберите тот, который вы используете. - person stefan   schedule 25.04.2014