Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум на CrossPlatform.RU _ С\С++ _ Как сконвертировать целое беззнаковое двухбайтное в HEX строку

Автор: silver47 24.7.2011, 18:56

Доброго времени суток. Собственно вопрос как получить из числа от 000000 до 65536 строку в HEX от 0000 до FFFF соответственно. Например: из 13801 получить "35E9".

Спасибо.

Автор: RazrFalcon 24.7.2011, 20:22

QByteArray arr;
arr.setNum(65000,16);
qDebug()<<arr;
"fde8"

Оно?

Автор: Litkevich Yuriy 24.7.2011, 20:23

Цитата(RazrFalcon @ 24.7.2011, 23:22) *
Оно?
разделом ошибся, о Qt речи не идёт, только Си/Си++

Автор: ilyabvt 24.7.2011, 20:49

http://<a%20href="http://ru.wikipedia.org/wiki/%D0%94%D0%B2%D0%BE%D0%B8%D1%87%D0%BD%D0%B0%D1%8F_%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%B0_%D1%81%D1%87%D0%B8%D1%81%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F#.D0.9F.D1.80.D0.B5.D0.BE.D0.B1.D1.80.D0.B0.D0.B7.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B4.D0.B5.D1.81.D1.8F.D1.82.D0.B8.D1.87.D0.BD.D1.8B.D1.85_.D1.87.D0.B8.D1.81.D0.B5.D0.BB_.D0.B2_.D0.B4.D0.B2.D0.BE.D0.B8.D1.87.D0.BD.D1.8B.D0.B5"%20target="_blank">http://ru.wikipedia.org/wiki/%D0%94%D0%B2%....BD.D1.8B.D0.B5</a>

Только делить надо не на 2, а на 16. Ну а численные значения остатка больше 9 преобразовывать в соответствующие буквы.

Автор: RazrFalcon 24.7.2011, 20:54

Доу, не заметил.

Автор: Iron Bug 24.7.2011, 20:58

дык, эта... sprintf чем не устраивает? стандартное решение.
правда, если нужна очень высокая скорость, то sprintf может оказаться неоптимальным.

Автор: BRE 24.7.2011, 21:21

Ну и конечно для плюсов не забываем про stringstream'ы.

Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)