Qt 类型转换

十六进制 十进制 二进制 转换 及 位移操作。

QString strRec ="FF0102030405060708090A0B0C0D0E0F";

将十六进制字符串转换成十进制

QString str1= strRec.mid(6,4);

将十六进制字符串转换成double类型

double d1= (double)str1.toInt(0,16);

将double类型/100,保留到小数点后3位

QString s1 = QString::number(d1/100,'f',3);

以下举例如何从温湿度传感器解析数据:

double 转 string 保留小数点后1位

//温度传感器数据一般都是十六进制的,如

HEX = 10 06

BIN = 0001 0000 0000 0110

DEC = 4102

对应温度41.02度

ulong tmp = /(uchar)/dataTemp3; //第3为10 BIN=0001 0000

tmp<<=8; //向左移8位(高位),后8位给第4用(低位)

tmp |= dataTemp4; //按位或操作,将它们合并到tmp变量中

double dTmp = (double)tmp / 100;

QString sTmp = "环境温度 "+QString::number(dTmp,'f',1)+" ℃";

// ui->lbl_Tmp->setText("strCor"); // 环境温度 36.03 ℃

相关推荐
端庄的战斗机几秒前
javascript 设计模式(文章很长,请自备瓜子,水果和眼药水)
开发语言·javascript·设计模式
Full Stack Developme36 分钟前
Java LRU 与 LFU 算法及应用
java·开发语言·算法
C语言小火车2 小时前
C++ 堆排序深度精讲:基于完全二叉树的选择排序进化,最坏情况 O(n log n) 的稳定王者
开发语言·c++·算法·排序算法·堆排序
北冥you鱼2 小时前
abigen 最佳实践:从入门到精通,高效生成 Go 语言合约绑定
开发语言·golang·区块链
ALex_zry3 小时前
C++26 std::complex 结构化绑定详解:auto [re, im] = c
c语言·开发语言·c++
她说..4 小时前
Java 默认值设置方式
java·开发语言·后端·springboot
忧郁的紫菜4 小时前
基础实现:单篇 Markdown 转 Word
开发语言·c#·word
甜美的小天鹅4 小时前
Swifter C#之inline还是不inline,这是个问题
开发语言·c#
小短腿的代码世界4 小时前
Qt Bluetooth源码深度解析:从HCI协议到跨平台API的完整架构
开发语言·qt·架构
北冥you鱼5 小时前
Go 语言读取链上数据:从基础到实战
开发语言·后端·golang