Libreria ios C ++ - Funzione fissa
Descrizione
Viene utilizzato per impostare il flag del formato floatfield per il flusso str su fixed. Quando floatfield è impostato su fixed, i valori a virgola mobile vengono scritti utilizzando la notazione a virgola fissa: il valore è rappresentato esattamente con tante cifre nella parte decimale come specificato dal campo di precisione (precisione) e senza parte esponente.
C ++ 98
Il flag del formato floatfield è sia selettivo che di attivazione / disattivazione: può accettare uno, entrambi o nessuno dei seguenti valori come mostrato di seguito:
Valore flag | Effetto quando impostato |
---|---|
fisso | scrivere valori a virgola mobile in notazione a virgola fissa |
scientifico | scrivere valori in virgola mobile in notazione scientifica. |
(nessuna) | scrivere valori a virgola mobile nella notazione a virgola mobile predefinita. |
C ++ 11
Il flag del formato floatfield è sia un flag selettivo che un flag di attivazione / disattivazione: può assumere uno dei seguenti valori o nessuno come mostrato di seguito:
Valore flag | Effetto quando impostato |
---|---|
fisso | scrivere valori a virgola mobile in notazione a virgola fissa. |
scientifico | scrivere valori in virgola mobile in notazione scientifica. |
hexfloat | scrivere valori in virgola mobile in formato esadecimale. Il valore di questo è lo stesso di |
defaultfloat | scrivere valori a virgola mobile nella notazione a virgola mobile predefinita. Questo è il valore predefinito (uguale a nessuno, prima di qualsiasi altrofloatfield bit è impostato). |
Dichiarazione
La seguente è la dichiarazione per std :: fixed function.
ios_base& fixed (ios_base& str);
Parametri
str - Oggetto flusso il cui flag di formato è interessato.
Valore di ritorno
Restituisce Argument str.
Eccezioni
Basic guarantee - se viene generata un'eccezione, str è in uno stato valido.
Gare di dati
Modifica str. L'accesso simultaneo allo stesso oggetto flusso può causare gare di dati.
Esempio
Nell'esempio seguente viene spiegato la funzione 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;
}
Compiliamo ed eseguiamo il programma sopra, questo produrrà il seguente risultato:
default:
3.1416
2006
1e-010
fixed:
3.14159
2006.00000
0.00000
scientific:
3.14159e+000
2.00600e+003
1.00000e-010