有没有与NPF相当的C++?

2024-09-24 06:30:47 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在通过一个简单的STM32蓝丸MCU从雷达上读取一些数据。 我有一些代码例子,我写了python和MATLAB,并把它翻译成C++。p>

有一件事我不能正常工作,那就是下面的代码。Python代码:

TDAT_Distance = np.frombuffer(com_obj.read(2), dtype=np.uint16)

我收到了一个UINT16小endian。 TDAT_距离是变量 np.frombuffer的值从serial读取2个字节并设置数据类型

在C++中,我尝试将字节读入数组,但没有得到预期的结果。p>

任何提示都将不胜感激

谢谢


Tags: 数据代码comobjread字节np例子
1条回答
网友
1楼 · 发布于 2024-09-24 06:30:47

如果读取返回的字节(指向的指针)正确对齐,并且与系统的endianness匹配,则可以reinterpret_cast<uint16_t *>(com_obj.read(sizeof(uint16_t)));

这可能不太可能,因此您可以使用正确的值构造一个uint16_t

uint16_t from_le_bytes(const unsigned char * bytes)
{
    return bytes[0] | (bytes[1] << 8);
}

相关问题 更多 >