第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何把qt串口接收到的十六進制轉為十進制 ?

如何把qt串口接收到的十六進制轉為十進制 ?

拉丁的傳說 2019-04-11 10:07:54
如何把qt串口接收到的十六進制轉為十進制 
查看完整描述

3 回答

?
米脂

TA貢獻1836條經(jīng)驗 獲得超3個贊

你說的十六進制是 類似“CA”之類的 文本 吧,
在Qt的幫助文檔中注意看這個函數(shù):
int QString::toInt ( bool * ok = 0, int base = 10 ) const
注意其中的 ‘base’

QString str = "FF";
bool ok;
int hex = str.toInt(&ok, 16); // hex == 255, ok == true

查看完整回答
反對 回復 2019-04-15
?
汪汪一只貓

TA貢獻1898條經(jīng)驗 獲得超8個贊

類似“02e3a2f5d6”的字符串,可以用字符拆分的方式進行分解,可以分解到QByteArray對象中
給你一個拆分類似 "12 35 AB 25 CD"字符串的函數(shù),自己再稍加改動就可以用了

QByteArray HEXStringToArr(QString hexstr)
{
QByteArray qrst;
hexstr=hexstr.trimmed();
hexstr=hexstr.replace("",",");
QStringList sl=hexstr.split(",");
foreach(QString s,sl)
{
if(!s.isEmpty())
qrst.append((char)s.toInt(0,16)&0xFF);
}
return qrst;
}

查看完整回答
反對 回復 2019-04-15
?
胡說叔叔

TA貢獻1804條經(jīng)驗 獲得超8個贊

串口發(fā)送的數(shù)據(jù)是8位的,最大為255,就是FF,如果要發(fā)送大于255的數(shù),必須變成幾個字節(jié)發(fā)送,例如要發(fā)送十進制2315,就要將數(shù)據(jù)拆分 data(0)=2315/256; data(1)=2315%256; 這樣就拆分開數(shù)據(jù),再將數(shù)據(jù)發(fā)送出去。

查看完整回答
反對 回復 2019-04-15
  • 3 回答
  • 0 關注
  • 6322 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號