我想知道是否可以使用联合从接收到的char数组中获取浮点数。假设我已经定义了以下结构
typedef union {
float f;
char c[4];
} my_unionFloat_t;
如果我收到一个char数组,对一个float进行编码,就像这样(数字是虚构的)
data[4] = {32,45,56,88};
我可以做以下事情吗?
my_unionFloat_t c2f;
c2f.c[0] = data[0];
c2f.c[1] = data[1];
c2f.c[2] = data[2];
c2f.c[3] = data[3];
float result = c2f.f;
在C中实现这一点的最简单方法是使用reinterpret_cast
:
unsigned char data[4] = {32,45,56,88};
float f = reinterpret_cast<const float&>(data);
const unsigned char* ch = reinterpret_cast<const unsigned char*>(&f);
for(int i=0; i<4; ++i)
std::cout << +ch[i] << ' ';
std::cout << f << '\n';
是否可以将 ?如果是这样 - ? 我目前正在做一个项目,我需要<code>创建一个包含<code>字母表的字符数组。我当前的创建了一个(应该将
问题内容: 有点像这个问题,但是相反。 给定类似,或的字符串,将其转换为浮点数的最佳方法是什么?我正在考虑根据情况使用正则表达式,但是也许有人知道更好的方法或预先存在的解决方案。我希望可以使用,但是我认为第3种情况可以避免这种情况。 问题答案: 我稍微调整了詹姆斯的回答。 http://ideone.com/ItifKv
问题内容: 我有一个Swift程序,可以与C库互操作。这个C库返回一个内部带有数组的结构,如下所示: 该定义已正确导入到Swift中。但是,该字段被解释为8个元素(类型为)的 元组 ,我不知道如何使用Swift 将其转换为a 。 没有可以接受元组的初始化程序,并且似乎不可能获得指向元组的第一个元素的指针(因为类型可以是异构的,这并不奇怪)。 现在,我最好的主意是创建一个微型C函数,该函数接受指向结
问题内容: 我有一个必须解析的二进制文件,并且正在使用Python。有没有办法占用4个字节并将其转换为单个精度浮点数? 问题答案:
转换/展平列表的简单方法是什么 我知道我可以通过迭代并使用来做到这一点,但我想知道是否有更简单的方法使用Java8个流来做到这一点? 可能是这样的,但不必将原语char装箱到Character:
问题内容: 期望: 结果: Jsoup可以将值HTML转换为XHTML吗? 问题答案: 见: