gpt4 book ai didi

c++ - 如何将 float 变量分配给 unsigned int 变量,位图,而不是强制转换

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:25:00 25 4
gpt4 key购买 nike

我知道这样做很奇怪,而且不可移植。但是我有一个分配的无符号整数数组,我偶尔想在其中“存储”一个 float 。我不想转换 float 或将其转换为最接近的等效 int;我想将 float 的精确位图存储在分配给 unsigned int 的空间中,这样我以后可以将它作为 float 检索,并且它会保留其原始 float 值。

最佳答案

这可以通过简单的复制来实现:

uint32_t dst;
float src = get_float();

char * const p = reinterpret_cast<char*>(&dst);

std::copy(p, p + sizeof(float), reinterpret_cast<char *>(&src));

// now read dst

向后复制的工作方式类似。

关于c++ - 如何将 float 变量分配给 unsigned int 变量,位图,而不是强制转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8365143/

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