Я пытаюсь преобразовать QByteArray
, который содержит значение в шестнадцатеричном формате, в long long
:
QByteArray field = "A8BC301F0193E83F";
bool ok;
qlonglong val = field.toLongLong(&ok, 16);
qDebug() << ok << val;
вывод:
ложь 0
Вместо этого я ожидаю, что val = -6.288.098.069.987.465.153.
Почему это не получается? В документах ничего не говорится о каких-либо ограничениях этой функции.
Я забыл упомянуть, что порядок данных в источнике является прямым порядком байтов.