我正在为我的硬件编写数据采集代码。
但是,我需要找到我收集的数据的平均值。
问题在于,获取的数据采用unsigned char
格式,我需要将其转换为double
格式。此外,收集的数据呈指数形式[1.789232E-05]。
有没有办法将unsigned char
转换为double
然后再转回?
我有一个double j
和一个unsigned char a[200]
无符号字符包含1.789232E-05。如何将该数据转换为双倍?
谢谢!
答案 0 :(得分:3)
你可以尝试使用atof从char转换为double,至于将double表示为char我建议你使用char *来存储转换后的double。
从msdn:http://msdn.microsoft.com/en-us/library/hc25t012%28v=vs.71%29.aspx
链接到atof答案 1 :(得分:0)
“指数形式”并不意味着具体。如果数据 是8位,它可能是G.711格式,无论是A-Law还是 μ律。根据哪一个,你必须使用不同的 转换程序。 (在这两种情况下,8位格式都是1位 符号,3位指数和4位尾数。)