crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> Разбор бинарных данных. Получение double
rcdimon
  опции профиля:
сообщение 22.8.2011, 13:44
Сообщение #1


Студент
*

Группа: Участник
Сообщений: 69
Регистрация: 27.10.2009
Пользователь №: 1183

Спасибо сказали: 1 раз(а)




Репутация:   0  


Всем привет.

Работаю с ГЛОНАСС-приемником по ком-порту. Он шлет бинарные пакеты определенной структуры. Я получаю эти пакеты в массив QByteArray. Я знаю, что, например, байты 4,5,6,7,8,9,10,11 хранят в себе данные типа double. Как мне эти 8 байт преобразовать в обычную double переменную? Потом эту переменную мне нужно будет вывести на экран в формате "31.12347"?
В добавок в документации к глонасс-приемнику видимо забыли указать little-endian или big-endian....

Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
kuzulis
  опции профиля:
сообщение 22.8.2011, 14:03
Сообщение #2


Активный участник
***

Группа: Участник
Сообщений: 393
Регистрация: 29.6.2009
Пользователь №: 862

Спасибо сказали: 36 раз(а)




Репутация:   7  


Цитата
Как мне эти 8 байт преобразовать в обычную double переменную?

QByteArray::toDouble(bool &ok) ?

Цитата
Потом эту переменную мне нужно будет вывести на экран в формате "31.12347"?

QString::number ( double n, char format = 'g', int precision = 6 )

PS: Мы не ассистенточитатели, да? Мы кодописатели?


Сообщение отредактировал kuzulis - 22.8.2011, 14:06
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 19.4.2024, 4:05