Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.64
exkilla
3 / 3 / 0
Регистрация: 28.12.2009
Сообщений: 73
#1

Перевод данных в hex. - C++

16.01.2011, 18:23. Просмотров 1432. Ответов 4
Метки нет (Все метки)

Всем привет!
Код
char buffs[6] = {"\x01\x7f\x34\xb0\x80"};
printf("%02X \n",buffs[0]);  // выводит 01
printf("%02X \n",buffs[1]);  // выводит 7F
printf("%02X \n",buffs[2]);  // выводит 34
printf("%02X \n",buffs[3]);  // выводит FFFFFFB0
printf("%02X \n",buffs[4]);  // выводит FFFFFF80
Подскажите пожалуйста как исправить, чтобы в ситуации с buffs[3] и buffs[4] выводило корректно.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.01.2011, 18:23
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Перевод данных в hex. (C++):

Перевод string в hex - C++
Как перевести букву в шестнадцатеричный вид. Например: Г - это 0xC3; Получилось следующее: QString str = "ПРИВЕТ"; ...

Перевод hex в char - C++
Добрый день! Снова с вопросом, дорогие форумчане.:) Есть задание - получаю строку, в которой хексовое число. Например "е8". Нужно из нее...

Перевод числа из hex в dec - C++
Привет, можете подсказать как можно перевести 16-ричное число произвольной длины (например, заданное с помощью строки) в десятичную сс?...

Перевод чисел Bin - Oct - Dec - Hex - C++
Существуют ли функции для перевода числа (или строки из цифр) из одной системы счисления (по основанию 2, 8, 10, 16) в другую. Как из...

Перевод из HEX в ASCII и ещё кое - что - C++
Народ, как строку в HEX типа 3A 30 31 30 36 перевести в ASCII типа :0106 ? А как наоборот? А самое интересное, как из HEX перевести...

Чтение файла GIF. Перевод текста в HEX. Декодирование GIF анимации - C++
Всем привет.. задача такая: Необходимо открыть файл GIF.. Например, как в этой статье про декодирование.. ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Daemon025
380 / 329 / 67
Регистрация: 06.12.2010
Сообщений: 900
16.01.2011, 18:37 #2
Выводит правильно, ток в В0 и 80 соответственно равны 1011 и 1000, первый бит, которых равен 1, что иногда принимается за отрицательное число. То есть оно попадает в диапозон от -127 до 127.
0
exkilla
3 / 3 / 0
Регистрация: 28.12.2009
Сообщений: 73
16.01.2011, 18:50  [ТС] #3
Daemon025, спасибо за ответ. Тогда как мне выводить В0 и 80? Брать всегда два последних символа? -) Если да, то подскажите WIN API функцию.
0
x1Mike7x
217 / 130 / 6
Регистрация: 06.11.2010
Сообщений: 234
16.01.2011, 21:36 #4
А зачем WIN API функция?)
Проблему описал Daemon025, для решения юзайте не просто char, а необозначенный char
C++
1
unsigned char buffs[5] = {"\x01\x7f\x34\xb0\x80"};
http://codepad.org/rQicaXDU
0
exkilla
3 / 3 / 0
Регистрация: 28.12.2009
Сообщений: 73
17.01.2011, 03:03  [ТС] #5
x1Mike7x, спасибо
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.01.2011, 03:03
Привет! Вот еще темы с ответами:

Если HEX одного файла заменить на HEX другого, то изменится ли файл и будет ли работоспособным? - C++
Привет, если два файла a.exe(калькулятор) и b.exe(выводит строку "Hello World") Если открыть файл b.exe в HEX-редакторе и подменить его...

Контрол для просмотра данных в HEX - C++
Кто-нибудь видел простой контрол для Borland C++ Builder, в котором можно просмотреть данные (файл, поток) в hex-виде? И иметь возможность...

[BMP] HEX (из HEX-редактора) в DEC - C++
Имеется файл *.bmp (который нельзя вложить в сообщение). В самом файле есть его свойства (размер и т.д.). Как их перевести из HEX в DEC? ...

Std::count << std::hex << (long) 0x0a; Как сделать, чтоб от HEX значения ноль при выводе не убирался? - C++
сабж...( std::count &lt;&lt; std::hex &lt;&lt; (long) 0x0a; ) выводится просто a, вместо 0а, а надо чтоб было именно 0а... куда делся setw,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
17.01.2011, 03:03
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru