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)/dataTemp[3]; //第3为10 BIN=0001 0000

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

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

double dTmp = (double)tmp / 100;

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

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

相关推荐
小龙报15 分钟前
《彻底理解C语言指针全攻略(6)-- qsort、sizeof和strlen》
c语言·开发语言·职场和发展·创业创新·学习方法·业界资讯·visual studio
郝学胜-神的一滴32 分钟前
Three.js光照技术详解:为3D场景注入灵魂
开发语言·前端·javascript·3d·web3·webgl
fie888933 分钟前
基于Matlab的深度堆叠自编码器(SAE)实现与分类应用
开发语言·分类
_w_z_j_42 分钟前
C++11----列表初始化和initializer_list
开发语言·c++
冬天的雪20081 小时前
java内存性能优化工具Mat
java·开发语言
Le1Yu1 小时前
消息队列以及RabbitMQ的使用
java·开发语言
羚羊角uou1 小时前
【Linux】线程池
java·开发语言
Fcy6482 小时前
C++ vector容器的解析和使用
开发语言·c++·vector
无限进步_2 小时前
C语言文件操作全面解析:从基础概念到高级应用
c语言·开发语言·c++·后端·visual studio
_OP_CHEN2 小时前
C++基础:(十五)queue的深度解析和模拟实现
开发语言·c++·stl·bfs·queue·容器适配器·queue模拟实现