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

Перевести строку в 16-й формат - C++

Восстановить пароль Регистрация
 
 
Nik-
19 / 19 / 9
Регистрация: 12.07.2015
Сообщений: 322
22.11.2015, 20:33     Перевести строку в 16-й формат #1
Нужно перевести строку(string) в 16-й формат, как сделать? Знаю про std:hex, но он работает только с char и записать получаемое число в другую переменную нельзя.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
nmcf
4297 / 3718 / 1251
Регистрация: 14.04.2014
Сообщений: 14,541
29.11.2015, 20:43     Перевести строку в 16-й формат #41
Ну если хочется всю программу переделывать.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Nik-
19 / 19 / 9
Регистрация: 12.07.2015
Сообщений: 322
29.11.2015, 20:46  [ТС]     Перевести строку в 16-й формат #42
Тогда не стану. Просто я не знаю про маппинг, никогда не использовал.
nmcf
4297 / 3718 / 1251
Регистрация: 14.04.2014
Сообщений: 14,541
29.11.2015, 20:46     Перевести строку в 16-й формат #43
Маппинг в WinAPI, насколько я знаю.
Nik-
19 / 19 / 9
Регистрация: 12.07.2015
Сообщений: 322
29.11.2015, 20:48  [ТС]     Перевести строку в 16-й формат #44
Да,ошибка, проецирование в память. Так точнее.
Nik-
19 / 19 / 9
Регистрация: 12.07.2015
Сообщений: 322
06.12.2015, 23:01  [ТС]     Перевести строку в 16-й формат #45
А можно сделать это без функции stoi ?
C++
1
2
3
4
5
6
7
8
9
10
while (getline(base, bytes))//Пока идет запись текста из базы в переменную
    {
        for (int i = 0; i < bytes.size(); i += 2)
            signature += static_cast<char>(stoi(bytes.substr(i, 2), nullptr, 16));//Записываем в переменную сигнатуру
        if ((p = data.find(signature)) != string::npos)//ищем нужную последовательность в последовательности файла
        {
            flag = true;//Флаг - 1. Вирус обнаружен
            break;//Останавливаем цикл
        }
    }
nmcf
4297 / 3718 / 1251
Регистрация: 14.04.2014
Сообщений: 14,541
07.12.2015, 12:28     Перевести строку в 16-й формат #46
Можно, но будут лишние операции. Какая проблема с stoi()?
Nik-
19 / 19 / 9
Регистрация: 12.07.2015
Сообщений: 322
07.12.2015, 16:39  [ТС]     Перевести строку в 16-й формат #47
В другом компиляторе в библиотеке функция не описана. Под билдер компилятор.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.12.2015, 22:09     Перевести строку в 16-й формат
Еще ссылки по теме:

Перевести длинную бинарную строку в строку с десятичными цифрами C++
Перевести 1 строку с С#на С++ C++
Как перевести строку в BSTR* C++

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

Или воспользуйтесь поиском по форуму:
nmcf
4297 / 3718 / 1251
Регистрация: 14.04.2014
Сообщений: 14,541
07.12.2015, 22:09     Перевести строку в 16-й формат #48
C++
1
signature += static_cast<char>(strtol(bytes.substr(i, 2).c_str(), NULL, 16));
Yandex
Объявления
07.12.2015, 22:09     Перевести строку в 16-й формат
Ответ Создать тему
Опции темы

Текущее время: 21:57. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru