お願いします。linuxです。
typedef struct{
short a;
short b;
}test_str

int main()
{
test_str g;
int k;

g.a = 0x1234;
g.b = 0x5678;

memcpy(&k,(int*)&g,sizeof(int));

printf("=>%x\n",k)
}

実行
=>56781234

本来は12345678を期待しています。
構造体のメンバの順番が入れ替わってしまうのはどういう現象なんでしょうか?
ググルにも現象名がわかりません。
教えてください。