std::dec, std::hex, std::oct
De cppreference.com
<tbody>
</tbody>
| Definido en el archivo de encabezado <ios>
|
||
std::ios_base& dec( std::ios_base& str ); |
(1) | |
std::ios_base& hex( std::ios_base& str ); |
(2) | |
std::ios_base& oct( std::ios_base& str ); |
(3) | |
Modifica la base numérica por defecto para E/S de enteros.
1) Establece el
basefield del flujo str a dec como si llamara a str.setf(std::ios_base::dec, std::ios_base::basefield).2) Establece el
basefield del flujo str a hex como si llamara a str.setf(std::ios_base::hex, std::ios_base::basefield).3) Establece el
basefield del flujo str a oct como si llamara a str.setf(std::ios_base::oct, std::ios_base::basefield).Este es un manipulador E/S. Se lo puede llamar con una expresión como out << std::hex para cualquier out de tipo std::basic_ostream o con una expresión como in >> std::hex para cualquier in de tipo std::basic_istream.
Parámetros
| str | - | Referencia al flujo de E/S. |
Valor de retorno
str (Referencia al flujo de E/S después de la manipulación).
Ejemplo
Ejecuta este código
#include <bitset>
#include <iostream>
#include <sstream>
int main()
{
std::cout << "El número 42 en octal: " << std::oct << 42 << '\n'
<< "El número 42 en decimal: " << std::dec << 42 << '\n'
<< "El número 42 en hex: " << std::hex << 42 << '\n';
int n;
std::istringstream("2A") >> std::hex >> n;
std::cout << std::dec << "Analizando \"2A\" como hex da " << n << '\n';
// la base de salida se consserva hasta que se cambie
std::cout << std::hex << "42 como hex da " << 42
<< " y 21 como hex da " << 21 << '\n';
// Nota: no existe ningún manipulador E/S que configure un flujo para imprimir
// números en formato binario (por ejemplo, bin). Si es necesaria una salida binaria,
// se puede utilizar el truco std::bitset:
std::cout << "El número 42 en binario: " << std::bitset<8>{42} << '\n';
}
Salida:
El número 42 en octal: 52
El número 42 en decimal: 42
El número 42 en hex: 2a
Analizando "2A" como hex da 42
42 como hex da 2a y 21 como hex da 15
El número 42 en binario: 00101010
Véase también
| Cambia la base usada para E/S de enteros. (función) | |
| Controla si se utiliza prefijo para indicar base numérica. (función) |