我有一个双转换为无符号字符数组。例如对于值 1,数组变为 {64, 240, 0, 0, 0, 0, 0, 0}。现在我尝试使用以下代码将数组转换回来,但我得到的只是糟糕的值......
double* pdfOutput = (double*)malloc(sizeof(double));
memcpy(pdfOutput, pInputArray, sizeof(double));
Run Code Online (Sandbox Code Playgroud)
你能告诉我问题出在哪里吗?谢谢。
编辑:pInputArray 由 LabVIEW 生成。基本上我在这里要做的是制作一个与LabVIEW VI对话的程序。所以我没有输入数组的控制权...
做你要求的简单方法是写:
double pdfOutput = *(double*)pInputArray;
Run Code Online (Sandbox Code Playgroud)
但这将产生与您的代码相同的结果。换句话说,重新解释您拥有的 char 数组不会产生您期望的 double 值。您需要查看 char 数组的来源。创建 char 数组的代码是我期望问题所在的地方。要解决您的问题,您需要了解 LabVIEW 代码在做什么。
| 归档时间: |
|
| 查看次数: |
7659 次 |
| 最近记录: |