Similar question但是,我正在尋找一個qt解決方案。一個負8位int的Qt十六進制表示?
我正在尋找一種方式將8位負int轉換爲十六進制表示。這個例子會更好地解釋它。
qint8 width = - 100;
qDebug() << QString::number(width, 16);
// "ffffffffffffff9c"
輸出遠遠超過2個字節。
但是,當我將其更改爲無符號時,它工作正常。
quint8 width = - 100;
qDebug() << QString::number(width, 16);
// "9c"
本細則規定:
的typedef quint8
的typedef無符號的字符。在Qt支持的所有 平臺上,此類型保證爲8位。
的typedef qint8
的typedef符號字符。在Qt支持的所有平臺上,此類型保證爲 8位。
不應該無符號不能處理負數?