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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 21, средняя оценка - 4.71
GLTLT
Сообщений: n/a
#1

что такое hex - C++

05.02.2013, 01:26. Просмотров 3851. Ответов 5
Метки нет (Все метки)

Здравствуйте вообщем возник вопрос что такое hex и как он работает. У меня была простая программка BitTest - инициируются две переменные и выводится результаты выполнения операторов ~, &, | и ^. Но при написании её возникла трудность результат выводился 10 системой исчисления а я хотел 16. Долга иска в чем косяк наткнулся на похожую программку и заметил что в cout добавлено вот это << hex/*преобразование десятичного числа в шестнадцатеричное*/, решив это повторить у меня все заработало как я хотел. Но я все ровно не понял почему прошу вас поясните мне как все заработало, и вот еще что заметил мне потребовалось всего один раз вставить hex что бы везде поменялось число с десятичного в шестнадцатеричное, связи с этим тоже вопрос а как сделать так что бы у меня выводил и в десятичной системе, то есть пусть первый cout << "Arg1" << nArg1 в шестнадцатеричной, а cout << "Arg2" << nArg2 в десятичной

BitTest

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
// BitTest - инициируются две переменные и
//           выводится результаты  выполнения
//           операторов ~, &, | и ^
#include <stdio.h>
#include <iostream>
using namespace std;
int main(int nArg, char* pszArgs[])
{
    //установка вывода в шестнадцатиричном виде
    cout.setf(ios::hex, ios::hex);
    //инициализация двух аргументов
    int nArg1 = 0x1234;
    int nArg2 = 0x00ff;
 
    //Выполнение логических операций
    // Сначала применяем унарный оператор NOT
    cout << "Arg1          = 0x" << hex << nArg1 << "\n"; // <<hex - без него не выводит 16 ответ, а выводит 10
    cout << "Arg2          = 0x" << nArg2 << "\n";
    cout << "~nArg1        = 0x" << ~nArg1 << "\n";
    cout << "~nArg2        = 0x" << ~nArg2 << "\n";
 
    // Теперь - бинарные операторы
    cout << "nArg1 & nArg2 = 0x" << (nArg1 & nArg2) << "\n";
    cout << "nArg1 | nArg2 = 0x" << (nArg1 | nArg2) << "\n";
    cout << "nArg1 ^ nArg2 = 0x" << (nArg1 ^ nArg2) << "\n";
 
    return 0;
}
похожий код из которого я взял hex

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// translate.cpp: определяет точку входа для консольного приложения.
 
#include "stdafx.h"
#include <iostream>
using namespace std;
 
int main(int argc, char* argv[])
{
    setlocale(LC_ALL, "rus");
    int number;
 
    cout << "Введите число: ";
    cout.setf(ios::showbase); // индикатор основания системы
    cin >> number;
    cout << "Шестнадцатеричная форма записи числа " << number << " = "
         << hex/*преобразование десятичного числа в шестнадцатеричное*/ << number << endl;
 
    system("pause");
    return 0;
}
взят с сайта http://cppstudio.com/praktikum/sborn...adcaterichnoe/
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.02.2013, 01:26     что такое hex
Посмотрите здесь:

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

Что такое istringstream? - C++
#include &lt;iostream&gt; #include &lt;string&gt; #include &lt;sstream&gt; #include &lt;algorithm&gt; using namespace std; int main() { string...

Что такое указатели? - C++
Здравствуйте. Что такое указатели? Для чего они нужны? И когда их использовать? Объясните пожалуйста.

Что такое ООП. - C++
&quot;Объе́ктно-ориенти́рованное программи́рование (ООП) — парадигма программирования, в которой основными концепциями являются понятия объектов...

Что такое дескриптор ? - C++
Подскажите пожалуйста что представляет из себя дескриптор ??? Не могу разобраться ? в понятии это подразумеваеться какое то значение или...

Что такое NULL ? - C++
Обьясните, что значит NUL часто вижу его в условиях и операторах а что это значит точто не знаю!!!

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
abit
261 / 260 / 33
Регистрация: 03.02.2013
Сообщений: 714
05.02.2013, 01:30     что такое hex #2
это манипулятор из серии setw,setprecision и т.д. он переводит поток в режим отображения 16-ричных чисел на ввод/вывод, вернуться назад в 10-ную манипулятором dec
почему бы не попробывать научиться пользоваться поиском на этом сайте:
http://www.cplusplus.com/reference/ios/hex/?kw=hex
Пёс
228 / 76 / 4
Регистрация: 03.02.2013
Сообщений: 311
05.02.2013, 01:33     что такое hex #3
C++
1
2
3
4
5
6
7
#include <iostream>
using namespace std;
void main()
{
    cout << hex << 255 << endl;
    cout << dec << 255 << endl;
}
GLTLT
Сообщений: n/a
05.02.2013, 01:45     что такое hex #4
спасибо, вот только вопрос после того когда я напишу dec он и последующие будет показывать в 10-ную то есть например так:
C++
1
2
3
4
5
6
7
8
#include <iostream>
using namespace std;
void main()
{
    cout << hex << 255 << endl;
    cout << dec << 255 << endl;
    cout << 255 << endl;
}
Пёс
228 / 76 / 4
Регистрация: 03.02.2013
Сообщений: 311
05.02.2013, 01:50     что такое hex #5
GLTLT, да
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.02.2013, 01:52     что такое hex
Еще ссылки по теме:

Что такое Visual C++ - C++
Что это такое, и чем оно отличается от обычного стандарт C++?

Что это такое? - C++
Написал большую программу (курсовая работа), после многочисленных правок закончились красные подчеркивания в тексте программы, но при...

Что такое MVS? - C++
И для чего нужно?В гугле ничё не нашёл.

Что такое потоки? - C++
Просмотрел ряд статей про потоки, но там все про создание и использование. А объяснения, что из себя представляет поток нет. Может кто...

что такое Void - C++
Всем привет кто подскажет что такое Void.

Что такое композиция? - C++
Добрый день. Тут читаю книгу и в ней приводится длинющий и непонятный пример композиции. Попросил бы Вас привести простенький пример...


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

Или воспользуйтесь поиском по форуму:
Dr.Urban
63 / 58 / 7
Регистрация: 14.12.2011
Сообщений: 193
05.02.2013, 01:52     что такое hex #6
Можете использовать старый printf() с stdio
Yandex
Объявления
05.02.2013, 01:52     что такое hex
Ответ Создать тему
Опции темы

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