一.前言
楼主在实际开过程中,经常遇到进制转换,特别是和串口打交道的时候,这种转换更是常态,有时候还会遇到要转成指定长度16进制和2进制,比较常见的就是2个长度的16进制和8个长度的2进制,故做个记录
二.代码
1.1 10进制转2个长度16进制
int dec1=8;
QString hex1 = QString("%1").arg(dec1, 2, 16, QLatin1Char('0'));
qDebug()<<dec1<<":"<<hex1;
int dec2=52;
QString hex2 = QString("%1").arg(dec2, 2, 16, QLatin1Char('0'));
qDebug()<<dec2<<":"<<hex2;
1.2 10进制转8个长度2进制
int dec3=66;
QString binary3 = QString("%1").arg(dec3, 8, 2, QLatin1Char('0'));
int dec4=1;
QString binary4 = QString("%1").arg(dec4, 8, 2, QLatin1Char('0'));
qDebug()<<dec3<<":"<<binary3;
qDebug()<<dec4<<":"<<binary4;