Biblioteca C ++ ios - Função Fixa
Descrição
É usado para definir o sinalizador de formato floatfield para o fluxo str como fixo. Quando floatfield é definido como fixo, os valores de ponto flutuante são escritos usando a notação de ponto fixo: o valor é representado exatamente com tantos dígitos na parte decimal como especificado pelo campo de precisão (precisão) e sem parte do expoente.
C ++ 98
O sinalizador de formato floatfield é um sinalizador seletivo e alternativo: ele pode ter um, ambos ou nenhum dos seguintes valores, conforme mostrado abaixo -
Valor da bandeira | Efeito quando definido |
---|---|
fixo | escrever valores de ponto flutuante em notação de ponto fixo |
científico | escrever valores de ponto flutuante em notação científica. |
(Nenhum) | escrever valores de ponto flutuante na notação de ponto flutuante padrão. |
C ++ 11
O sinalizador de formato floatfield é seletivo e alternativo: ele pode assumir qualquer um dos seguintes valores ou nenhum como mostrado abaixo -
Valor da bandeira | Efeito quando definido |
---|---|
fixo | escrever valores de ponto flutuante em notação de ponto fixo. |
científico | escrever valores de ponto flutuante em notação científica. |
hexfloat | escrever valores de ponto flutuante em formato hexadecimal. O valor disso é o mesmo que |
flutuar | escrever valores de ponto flutuante na notação de ponto flutuante padrão. Este é o valor padrão (igual a nenhum, antes de qualquer outroFloatfield bit está definido). |
Declaração
A seguir está a declaração para a função std :: fixed.
ios_base& fixed (ios_base& str);
Parâmetros
str - Objeto de fluxo cujo sinalizador de formato é afetado.
Valor de retorno
Ele retorna Argument str.
Exceções
Basic guarantee - se uma exceção for lançada, str está em um estado válido.
Corridas de dados
Ele modifica str. O acesso simultâneo ao mesmo objeto de fluxo pode causar disputas de dados.
Exemplo
No exemplo abaixo explica sobre a função std :: fixed.
#include <iostream>
int main () {
double a = 3.1415926534;
double b = 2006.0;
double c = 1.0e-10;
std::cout.precision(5);
std::cout << "default:\n";
std::cout << a << '\n' << b << '\n' << c << '\n';
std::cout << '\n';
std::cout << "fixed:\n" << std::fixed;
std::cout << a << '\n' << b << '\n' << c << '\n';
std::cout << '\n';
std::cout << "scientific:\n" << std::scientific;
std::cout << a << '\n' << b << '\n' << c << '\n';
return 0;
}
Vamos compilar e executar o programa acima, isso produzirá o seguinte resultado -
default:
3.1416
2006
1e-010
fixed:
3.14159
2006.00000
0.00000
scientific:
3.14159e+000
2.00600e+003
1.00000e-010