关于C++ 中COUT的一些疑问

来源:百度知道 编辑:UC知道 时间:2024/05/20 21:20:07
如:double i=123.456789;
cout<<setiosflags(ios::scientific)<<i<<endl;
cout<<setiosflags(ios::fixed)<<i<<endl;
则一行会以指数形式输出
而二行会以定点小数输出
cout<<setiosflags(ios::fixed)<<i<<endl;
cout<<setiosflags(ios::scientific)<<i<<endl;
则应该是一行以定点小数输出
二行以指数输出
二事实是两行都以定点小数输出请问这是为什么
若我想第二行以指数形式输出则应怎么写
(VC++6.0)

set互相冲突的标记之前最好先把前一个 reset掉

cout<<setiosflags(ios::fixed)<<i<<resetiosflags(ios::fixed)<<endl;
cout<<setiosflags(ios::scientific)<<i<<endl;

嫌麻烦的话有直接的办法 cout << fixed << i << endl;
cout << scientific << i << endl;