目录

scientific

描述 (Description)

它用于将str流的floatfield格式标志设置为scientific。 当floatfield设置为scientific时,使用科学计数法写入浮点值:该值始终表示小数点前只有一位数,后跟小数点和精度字段(精度)的十进制数字。 最后,这种表示法总是包括一个指数部分,由字母e后跟一个可选符号和三个指数数字组成。

C++98

floatfield格式标志既是选择性标志又是切换标志:它可以采用以下一个或多个值,如下所示 -

旗帜价值 设定时的效果
fixed 以定点表示法写入浮点值
scientific 用科学记数法写浮点值。
(none) 以默认浮点表示法写入浮点值。

C++11

floatfield格式标志既是选择性标志又是切换标志:它可以采用以下任何值,如下所示:

旗帜价值 设定时的效果
fixed 以定点表示法写入浮点值。
scientific 用科学记数法写浮点值。
hexfloat

以十六进制格式写入浮点值。

这个值与(fixed|scientific)

defaultfloat 以默认浮点表示法写入浮点值。 默认情况下,这是值(与none 无关 ,在设置任何其他floatfield位之前)。

声明 (Declaration)

以下是std :: scientific函数的声明。

ios_base& scientific (ios_base& str);

参数 (Parameters)

str - 格式标志受影响的Stream对象。

返回值 (Return Value)

它返回Argument str。

异常 (Exceptions)

Basic guarantee - 如果抛出异常,str处于有效状态。

数据竞争 (Data races)

它修改了str。 对同一流对象的并发访问可能会导致数据争用。

例子 (Example)

在下面的例子解释了关于std :: scientific的功能。

#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;
}

让我们编译并运行上面的程序,这将产生以下结果 -

default:
3.1416
2006
1e-010
fixed:
3.14159
2006.00000
0.00000
scientific:
3.14159e+000
2.00600e+003
1.00000e-010
↑回到顶部↑
WIKI教程 @2018