Russian Qt Forum
Сентябрь 30, 2024, 06:37 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: QByteArray -> int32, float32  (Прочитано 4104 раз)
xk
Гость
« : Май 04, 2007, 21:08 »

Есть QByteArray с 4 байтами, полученными по сети. Нужно эти байты преобразовать в int32 и float32.
Никак не пойму, как этого добиться средствами Qt.

Для int32 заюзал пока такой код, но он не кроссплатформенный:
Код:

char c1 = bytes.at(0);
char c2 = bytes.at(1);
char c3 = bytes.at(2);
char c4 = bytes.at(3);

qint32 score = ((unsigned char)c4<<24)|((unsigned char)c3<<16)|((unsigned char)c2<<8)|((unsigned char)c1);


Наверняка есть какой-то способ добиться того же с помощью Qt, с учетом big endian, little endian и т.д.
Записан
Tonal
Гость
« Ответ #1 : Май 05, 2007, 08:11 »

Если эти байты в сеть положил кто-то, то смотри спецификацию на его протокол.
А если ты сам, то кто тебе мешает QDataStream использовать, и не думать о размере конца? ;-)
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.043 секунд. Запросов: 20.