回复: QT串口软件显示四字节浮点数
#6 回 20091001753 的帖子 [captain_mh 10-30 10:10]
20091001753:首先,建议你买一本Qt的书,先系统性地入门Qt,这样对Qt有些啥能有大概的了解。
然后,不花钱的办法,就是去B站看QT入门视频。
因为你这个问题,只要是看过入门教程的人,一般都不会问出来。
如果你不先去系统性地了解一下,那么你每遇到一个问题,就要发一个帖问一次。这会严重 .. (2023-10-23 15:45)
谢谢,照您说的,我先系统学习下
#7 [abc881858 02-22 11:05]
其实就是 float 转 QString,因为控件要显示的话,都是用的 QString
ui->textEdit->setText(QString::number(receivedFloat, 'f', 2)); // 'f'表示浮点数,2表示小数点后保留两位
当然 你也可能收到的是 4个Hex值,比如协议上用了 uint8_t data[4]
那就要涉及 char 到 float 的转换
#include
#include
int main() {
uint8_t data[4] = {0xAA, 0xBB, 0xCC, 0xDD};
float result = 0.0f;
for (int i = 0; i < 4; ++i) {
result += static_cast(data) * (1
#8 回 abc881858 的帖子 [boylebao 07-25 08:25]
abc881858:其实就是 float 转 QString,因为控件要显示的话,都是用的 QString
ui->textEdit->setText(QString::number(receivedFloat, 'f', 2)); // 'f'表示浮点数,2表示小数点后保留两位
....... (2024-02-22 11:05)
你这个方法错误的,问了AI修改这样亲测可以用。
uint8_t data[4] = {0x3F, 0xA0, 0x00, 0x00};
uint32_t combined = 0;
for (int i = 0; i < 4; ++i) {
combined |= static_cast(data)