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

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

Войти
Регистрация
Восстановить пароль
 
R136a1
142 / 111 / 15
Регистрация: 14.04.2011
Сообщений: 261
#1

Разбор числа - C++

16.03.2012, 17:52. Просмотров 768. Ответов 0
Метки нет (Все метки)

Всем привет. Нужно разобрать число на две части. Первая часть(инструкция) - шестнадцатеричное число, вторая часть(операнд) - десятичное. Допустим имеем 0xA225. Инструкция - 0xA2, операнд - 25. Собственно, с этим разобрался, но сейчас стоит задача ещё и обрабатывать числа с плавающей точкой, допустим 0xA21.2 . Инструкция - 0xA2, операнд - 1.2 . Вот с этим разобраться не могу, есть мысль, вводить число как массив char , а потом разложить с помощью sscanf, но я думаю есть более элегантное решение. Ведь так?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
        scanf("%x",&num);
 
        instruction = (num >> 8);
 
        operand = (num & 0xFF);
 
        std::stringstream temp_stream;
 
        temp_stream << std::hex << operand;
 
        std::string temp_string;
 
        temp_stream >> temp_string;
 
        std::stringstream conv(temp_string);
 
        conv >> operand;
Добавлено через 1 час 29 минут
Проблема решена, точнее её и не было Не правильно понял задание.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.03.2012, 17:52
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Разбор числа (C++):

Разбор программы.Перевод двоичного числа в десятичн - C++
char bin // изображение двоичного числа, почему именно так и что такое bin? нигде не могу найти long int dec //десятичное число, что...

Разбор выражений - C++
Вывести значение целочисленного выражения, заданного в виде строки S. Выражение определяется следующим образом: &lt;выражение&gt; ::= &lt;терм&gt;...

Разбор кода - C++
Нужно разобрать код. не могу понять что тут выполняется, кроме открытия файлов #include &lt;iostream&gt; #include &lt;fstream&gt; ...

Разбор программы - C++
#include&lt;iostream&gt; using namespace std; void func1(); void func2(); int f; int main() {

Разбор OpenSource - C++
Есть опенсоурс сайт sourceforge.net, на котором много готовых и не очень проектов на С++. Многие из них собраны и зачастую состоят из...

Разбор ошибок - C++
Задача - Для целочисленной квадратной матрицы найти число элементов , кратных К и наибольший элемент из найденных кратных числу К...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.03.2012, 17:52
Привет! Вот еще темы с ответами:

Разбор полетов - C++
Меня больше всего интересует строчка вычесления позиции символа. (ring - lotr + 1). объясните, пожалуйста int main () { char...

Разбор задачи по С++ - C++
В универе дали задачу с условием, которое я не могу понять. Спросить у препода есть вариант, но только через неделю, поэтому хотелось бы,...

Разбор строки - C++
Здравствуйте. В stdin программы приходит строка вида domain=d.ru&amp;type=delete&amp;file=std&amp;... При этом мне необходимо получить значение...

Разбор строки - C++
Помогите разобрать вот такие строки: 2011/07/01 22:08:29 1 104725943 127.0.0.1 a4c58fa5aa21a67deceaa8420802346e aaaaaa bbbbbb ...


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

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

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