Имам този примерен код, който украсих с pack, за да се уверя, че размерът му е 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