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

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

Войти
Регистрация
Восстановить пароль
 
dimakozyr
157 / 24 / 1
Регистрация: 17.08.2013
Сообщений: 461
#1

Конвертация из heximal в int - C++

02.12.2013, 02:31. Просмотров 270. Ответов 4
Метки нет (Все метки)

Нужно написать функцию для конвертации строки, представленной как heximal, в int.
Например:
Вход:
C++
1
char * pStr = "0xFF";
Выход:
C++
1
int iRes = 255;
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.12.2013, 02:31     Конвертация из heximal в int
Посмотрите здесь:

Конвертация int в char и обратно C++
Конвертация int в char* C++
C++ Конвертация из int в string и наоборот
Конвертация числа в строку (int to char) C++
C++ Конвертация строкового типа в int
C++ Не происходит конвертация типа int в float
Конвертация из int в char C++
Конвертация qint64 в int и обратно C++
C++ Конвертация int в char
Конвертация переменной типа string в массив int C++
C++ Рекурсивная конвертация чисел int в string и наоборот (ошибка)
C++ Правильное объявление переменной с точки зрения стиля [int *a vs int* a]

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MrGluck
Ворчун
Эксперт CЭксперт С++
6642 / 3833 / 504
Регистрация: 29.11.2010
Сообщений: 10,148
02.12.2013, 02:42     Конвертация из heximal в int #2
C++
1
2
3
4
5
6
7
8
9
#include <iostream>
#include <string>
 
int main()
{
    std::string str = "0xFF";
    int i = std::stoi(str, nullptr, 0);
    std::cout << i << std::endl;
}
С++11

Добавлено через 1 минуту
А вообще вики:
http://ru.wikipedia.org/wiki/%D8%E5%...EB%E5%ED%E8%FF

Добавлено через 40 секунд
В английской даже код на JS Есть
dimakozyr
157 / 24 / 1
Регистрация: 17.08.2013
Сообщений: 461
02.12.2013, 02:47  [ТС]     Конвертация из heximal в int #3
А какое решение лучше?
C++
1
2
3
4
5
6
7
8
9
10
#include <sstream>
#include <iostream>
 
void func() {
    unsigned int x;
    std::stringstream ss;
    ss << std::hex << "0xFF";
    ss >> x;
    std::cout << static_cast<int>(x) << std::endl;
}
MrGluck
Ворчун
Эксперт CЭксперт С++
6642 / 3833 / 504
Регистрация: 29.11.2010
Сообщений: 10,148
02.12.2013, 03:53     Конвертация из heximal в int #4
вы кастуете беззнаковое число в знаковое, что не есть хорошо.
Здесь нет понятия лучше. Если есть уверенность в том, что будет поддержка С++11, то лучше - первый вариант, иначе второй т.к. первый банально не скомпилируется.
dimakozyr
157 / 24 / 1
Регистрация: 17.08.2013
Сообщений: 461
02.12.2013, 10:27  [ТС]     Конвертация из heximal в int #5
Цитата Сообщение от MrGluck Посмотреть сообщение
Если есть уверенность в том, что будет поддержка С++11
А от чего это зависит? От компилятора?
Yandex
Объявления
02.12.2013, 10:27     Конвертация из heximal в int
Ответ Создать тему
Опции темы

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