#include <iostream>
class Alignemnt{
public:
Alignemnt():a(){}
int a;
};
class Alignemnt_1{
public:
int a;
char array[2];
};
class Alignemnt_2{
public:
int a;
char array[2];
int x;
};
class Alignemnt_3{
public:
alignas(8) int a;
char array[2];
alignas(8) int x;
};
class alignas(8) Alignemnt_4{
public:
int a;
char array[2];
int x;
};
int main() {
std::cout << "Sizeof(Alignemnt) :" <<sizeof(Alignemnt) << std::endl;
std::cout << "Sizeof(Alignemnt_1) :" <<sizeof(Alignemnt_1) << std::endl;
std::cout << "Sizeof(Alignemnt_2) :" <<sizeof(Alignemnt_2) << std::endl;
std::cout << "Sizeof(Alignemnt_3) :" <<sizeof(Alignemnt_3) << std::endl;
std::cout << "Sizeof(Alignemnt_4) :" <<sizeof(Alignemnt_4) << std::endl;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKY2xhc3MgQWxpZ25lbW50ewpwdWJsaWM6CiAgICBBbGlnbmVtbnQoKTphKCl7fQogICAgaW50IGE7Cn07CgpjbGFzcyBBbGlnbmVtbnRfMXsKcHVibGljOgogICAgaW50IGE7CiAgICBjaGFyIGFycmF5WzJdOwp9OwoKY2xhc3MgQWxpZ25lbW50XzJ7CnB1YmxpYzoKICAgIGludCBhOwogICAgY2hhciBhcnJheVsyXTsKICAgIGludCB4Owp9OwoKY2xhc3MgQWxpZ25lbW50XzN7CnB1YmxpYzoKICAgIGFsaWduYXMoOCkgaW50IGE7CiAgICBjaGFyIGFycmF5WzJdOwogICAgYWxpZ25hcyg4KSBpbnQgeDsKfTsKCmNsYXNzIGFsaWduYXMoOCkgQWxpZ25lbW50XzR7CnB1YmxpYzoKICAgIGludCBhOwogICAgY2hhciBhcnJheVsyXTsKICAgaW50IHg7Cn07CgppbnQgbWFpbigpIHsKCXN0ZDo6Y291dCA8PCAgIlNpemVvZihBbGlnbmVtbnQpICAgOiIgPDxzaXplb2YoQWxpZ25lbW50KSA8PCBzdGQ6OmVuZGw7CglzdGQ6OmNvdXQgPDwgICJTaXplb2YoQWxpZ25lbW50XzEpIDoiIDw8c2l6ZW9mKEFsaWduZW1udF8xKSA8PCBzdGQ6OmVuZGw7CglzdGQ6OmNvdXQgPDwgICJTaXplb2YoQWxpZ25lbW50XzIpIDoiIDw8c2l6ZW9mKEFsaWduZW1udF8yKSA8PCBzdGQ6OmVuZGw7CglzdGQ6OmNvdXQgPDwgICJTaXplb2YoQWxpZ25lbW50XzMpIDoiIDw8c2l6ZW9mKEFsaWduZW1udF8zKSA8PCBzdGQ6OmVuZGw7CglzdGQ6OmNvdXQgPDwgICJTaXplb2YoQWxpZ25lbW50XzQpIDoiIDw8c2l6ZW9mKEFsaWduZW1udF80KSA8PCBzdGQ6OmVuZGw7Cn0=