gpt4 book ai didi

这个 union 能在小端机器上给出意想不到的值吗

转载 作者:太空宇宙 更新时间:2023-11-04 08:26:41 25 4
gpt4 key购买 nike

这个 union 能不能给我一个小字节序机器上的问题

union {
struct {
uint32_t min[4];
uint32_t max[4];
} x1;

struct {
uint64_t min[2];
uint64_t max[2];
} x1_64;
} u;

如果我使用 struct x1 存储值并使用 x1_64 检索,字节顺序是否会发挥作用并返回意外值??

最佳答案

我认为答案是"is"。在小端机器上,你必须以相反的顺序存储 x1。见下图:

enter image description here

表示x1_64.min[0]的低位部分应该存储为x.min[ 1 ] 和高部分作为 x1.min[0]。在大端机器上,您不必执行此操作。

(注意:我总是对小和大感到困惑,如果它应该读作“big endian”,请原谅)

关于这个 union 能在小端机器上给出意想不到的值吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30175027/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com