为什么 sizeof 联合不是 8 个字节而是 4 个字节,即使我在我的联合中使用指针?
Why is the sizeof union not 8 bytes but 4 bytes even if I am using pointer in my union?
union one
{
int *ui;
int u;
} yoo;
void main()
{
printf("%d\m", sizeof(yoo))
}
即使我在联合中使用指针,为什么 sizeof 联合不是 8 个字节而是 4 个字节?
我使用的是 64 位机器。
这是因为您已将其编译为 32 位可执行文件。
union one
{
int *ui;
int u;
} yoo;
void main()
{
printf("%d\m", sizeof(yoo))
}
即使我在联合中使用指针,为什么 sizeof 联合不是 8 个字节而是 4 个字节?
我使用的是 64 位机器。
这是因为您已将其编译为 32 位可执行文件。