std :: oct, std :: dec и std :: hex в C ++

Опубликовано: 31 Декабря, 2021

Эта функция используется для установки восьмеричного, десятичного или шестнадцатеричного основания. Он устанавливает флаг формата базового поля для потока str на указанную базу

std :: oct: Когда для базового поля задано восьмеричное, целочисленные значения, вставленные в поток, выражаются в восьмеричной системе счисления (т. е. с основанием 8). Для входных потоков также ожидается, что извлеченные значения будут выражены в восьмеричной системе счисления, если установлен этот флаг.

std :: hex: если для базового поля задано шестнадцатеричное значение, целочисленные значения, вставленные в поток, выражаются в шестнадцатеричной системе счисления (т. е. с основанием системы счисления 16). Для входных потоков также ожидается, что извлеченные значения будут выражены в шестнадцатеричной системе счисления, если установлен этот флаг.

Флаг формата базового поля может принимать десятичные значения (каждое со своим собственным манипулятором). Это манипулятор ввода-вывода. Его можно вызвать с помощью такого выражения, как out << std :: oct, std :: hex или std :: dec для любого типа вне std :: basic_ostream или с выражением
Синтаксис:

ios_base и шестнадцатеричный (ios_base & str);
ул:
 Объект потока, чей флаг формата базового поля затронут.
Возвращаемое значение:
Вернуть расширенную строку, проанализированную в базовом десятичном формате, в базовое восьмеричное.

Примеры:

Вход : 
54
Выход :
октябрь - 66
дек - 54
шестигранник - 36
// CPP program to illustrate
// std::oct, std::hex, std::dec
#include <iostream> // std::cout, std::dec, std::hex, std::oct
int main()
{
int n = 54;
std::cout << std::oct << "oct - " << n << ' ' ;
std::cout << std::dec << "dec - " << n << ' ' ;
std::cout << std::hex << "hex - " << n << ' ' ;
return 0;
}

Выход:

октябрь - 66
дек - 54
шестигранник - 36
Хотите узнать о лучших видео и практических задачах, ознакомьтесь с базовым курсом C ++ для базового и продвинутого уровня C ++ и курсом C ++ STL для базового уровня плюс STL. Чтобы завершить подготовку от изучения языка к DS Algo и многому другому, см. Полный курс подготовки к собеседованию .
C++