сериализация — десериализация очень больших чисел в переполнении стека

Я должен написать код, который может десериализовать числа, полученные от другого устройства через последовательный порт (RS232), в виде QByteArray без использования побитовых операторов. QByteArray может содержать любую длину данных от одного элемента до более чем 20 элементов или даже больше. Это возможно?

Решение, которое я нашел до сих пор:

int numelems = 0;
int exp = 0;
for(int i = tempba.size() - 1 ; i > -1 ; --i) {
numelems += (unsigned char)tempba.at(i) * pow(256, exp);
++exp;
}

где tempba это QByteArray заполнены данными, считанными из последовательного порта. Правильный ли этот подход? где это может быть провалено? Есть ли лучший способ добиться этого?

0

Решение

Задача ещё не решена.

Другие решения


По вопросам рекламы [email protected]