gpt4 book ai didi

c - 十六进制的 unsigned long long 的值是多少

转载 作者:行者123 更新时间:2023-11-30 19:54:15 25 4
gpt4 key购买 nike

我有这个变量

unsigned long long latitude = 29.47667;

当我将此值转换为这样的数组时

    ar[7] = (uint8_t)((latitude >> 56) & 0xFF);
ar[6] = (uint8_t)((latitude >> 48) & 0xFF);
ar[5] = (uint8_t)((latitude >> 40) & 0xFF);
ar[4] = (uint8_t)((latitude >> 32) & 0xFF);
ar[3] = (uint8_t)((latitude >> 24) & 0xFF);
ar[2] = (uint8_t)((latitude >> 16) & 0xFF);
ar[1] = (uint8_t)((latitude >> 8) & 0xFF);
ar[0] = (uint8_t)(latitude & 0xFF);

然后使用 tcp 套接字将其发送到服务器。当我发送时,我以十六进制打印值,然后我得到 0x1d 其余全部为零。

如何将 unsigned long long 转换为 int 时将精确值发送到服务器。

最佳答案

unsigned long long latitude = 29.47667没有多大意义,unsigned long long是一个整数类型。所以变量只得到截断的整数29

这就是为什么您只得到0x1d,即十六进制的29

关于c - 十六进制的 unsigned long long 的值是多少,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18327547/

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