我正在将我们的应用程序从 solaris sparc 移植到 solaris x86,我遇到了这两种架构之间结构的大小差异。例如; 我有一个像
typedef struct mystructS
{
double a;
double b;
double c;
double d;
double e;
double f;
double g;
double h;
double aa;
double ab;
double ac;
double ad;
double ae;
double af
double ag;
double ah;
int ba;
int bb;
int bc;
char ca[256];
} mystructT;
sizeof(mystructT)
当我在 solaris X86 中写入时,它返回 396
当我在 solaris SPARC 中写入sizeof(mystructT)
时,它返回 400
我只是好奇,为什么会发生这样的事情?
编辑:两个 Solaris 系统都是 32 位的。