c++ - 如何在 C++ (Arduino) 中将浮点数组转换为字节数组
问题描述
如何在 Arduino 中将浮点数组转换为字节数组。基本上以有效的方式将数组的所有浮点变量转换为字节(并将所有变量四舍五入为最接近的整数值)。
转换这个:
float mlx90640To[768];
至:
byte bytearray[768];
解决方案
我想我可能不完全理解这个问题。这可能是一个 XY 问题。
但是一个快速有效的解决方案可能如下。
#include <iostream>
#include <cmath>
using byte = unsigned char;
float mlx90640To[768];
byte bytearray[768];
int main() {
// Convert all float values
for (size_t i{}; i < 768; ++i)
bytearray[i] = static_cast<byte>(std::lround(mlx90640To[i]));
return 0;
}
推荐阅读
- node.js - 无法将 JSON 文件中的多个对象插入我的 MongoDB,它只插入第一个
- sql-server - 使用与服务器“tcp:xx.xxx.xxx.xx”上的数据库“myDb”的连接时发生错误。SQL Server - 谷歌云
- python - 如何删除 tsv 行
- javascript - 如何计算用户在Javascript中输入的数字的阶乘,使用,do-loop,while-loop?
- swift - 按钮上有丑陋的阴影,混合模式不起作用
- html - 如何必须根据内容调整大小的部分和使用剩余空间的部分
- arrays - 如果我们知道内存地址,我们可以直接访问数组的深层元素吗?
- java - 两个 HashMap “共享”相同的数据?
- php - PHP从父类访问值
- c++ - 如何创建实现 CDialogImpl 和 IPreviewFrameHandler 的 ATL 类