其他分享
首页 > 其他分享> > qt十进制十六进制字符串转整形数

qt十进制十六进制字符串转整形数

作者:互联网

// 此函数的作用是:“13”转为13,“0x0a”转为10
qint32 MainWindow::str2qint32(QString str)
{
    qint32 num;
    bool ok;
    if(str.contains("0x"))  // 如果这个字符串以0x开头,说明这是一个十六进制数,得按十六进制方式转
    {
        num = str.toInt(&ok,10);        
    }
    else    // 否则按照十进制方式转
    {
        num = str.toInt(&ok,16); // 显示的指定为16进制方式转,则有没有0x都可以,结果都是一样的       
    }
    if(!ok)
        QMessageBox::warning(this,"!!!","转换失败");
    return num;
}

标签:十六进制,ok,qt,0x,num,str,qint32,十进制
来源: https://blog.51cto.com/u_13682052/2981884