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

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

Войти
Регистрация
Восстановить пароль
 
defer
秘密
555 / 235 / 3
Регистрация: 29.11.2010
Сообщений: 783
#1

Перевернуть hex - C++

08.05.2012, 05:22. Просмотров 711. Ответов 2
Метки нет (Все метки)

как перевернуть число?
чтобы 0xA5 стало 0х5А
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.05.2012, 05:22
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Перевернуть hex (C++):

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

Найти количество простых чисел в массиве. Перевернуть все нечетные строки матрицы. Перевернуть каждое четное слово в строке - C++
Ребята помогите разобраться в коде программы, написав подробные комменты к данной проге. Спасибо! Постановка задачи 1. Используя...

[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,...

Как разбить одно число HEX число на два числа HEX ? - C++
Задача в том, что бы одно число в виде HEX (к примеру 0xD681) разбить на 2 числа HEX (из 0xD681 - &gt; 0xD6 и 0x81) именно что бы вот так...

std::ios::hex или std::ios.hex - C++
привет в коде встретил вот такую строчку ss.setf(std::ios.hex, std::ios::basefield); и на VS2008 это работает. Разве это...

2
Nameless One
Эксперт С++
5777 / 3427 / 255
Регистрация: 08.02.2010
Сообщений: 7,448
08.05.2012, 05:55 #2
Если перевернуть строковое представление числа, то так:

C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <iostream>
#include <string>
#include <algorithm>
 
int main()
{
    std::string hex("0xA5");
    
    std::cout << "Before: " << hex << std::endl;
    std::reverse(hex.begin() + 2, hex.end());    
    std::cout << "After: " << hex << std::endl;
}
Если же надо поменять порядок байт в самом числе, то упаковываешь число в union с массивом unsigned char и переворачиваешь сам массив.
1
diagon
Higher
1932 / 1198 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
08.05.2012, 06:14 #3
Как-то так
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
 
unsigned reverse_hex( unsigned x )
{
    unsigned res = 0;
    
    for ( ; x != 0; x /= 16 )
        res *= 16, res += x % 16;
        
    return res;
}
 
int main()
{
    int x = 0xA5;
    
    std::cout << std::hex << reverse_hex(x);
}
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.05.2012, 06:14
Привет! Вот еще темы с ответами:

Перевернуть число - C++
Здравствуйте, Ув. Форумчане Очень интересен алгоритм построения этой программы Буду особо благодарен Смею заметить что в...

Перевернуть строку - C++
Написал программу которая переворачивает строку #include&lt;iostream&gt; #include&lt;cstring&gt; using namespace std; void reversit(char...

Перевернуть строку - C++
Написать функцию, которая переставляет символы строки по принципу обмена первого и последнего, второго и предпоследнего и т.д. ...

Перевернуть массив - C++
В завершении это программы нужно «перевернуть массив» - поменять первый элемент с последним, второй с предпоследним и т.д, но никак не...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

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