fork download
  1. #include <iostream>
  2.  
  3. struct mystruct_not_packed
  4. {
  5. char a1;
  6. char a2;
  7. int a3;
  8. };
  9.  
  10. #pragma pack(push,1)
  11. struct mystruct
  12. {
  13. char a1;
  14. char a2;
  15. int a3;
  16. };
  17.  
  18. mystruct_not_packed object; // This doesn't apply
  19. #pragma pack(pop)
  20.  
  21. int main(int argc, char *argv[])
  22. {
  23. std::cout << sizeof(mystruct) << std::endl; // 6
  24. std::cout << sizeof(mystruct_not_packed) << std::endl; // 8
  25. std::cout << sizeof(object) << std::endl; // 8
  26. }
Success #stdin #stdout 0s 3340KB
stdin
Standard input is empty
stdout
6
8
8