c++ i/o流 中的 cout的成员函数 setf 中 ios::left与ios::right 的作用原理 解释下这段代码
#include<iostream>#include<iomanip>usingnamespacestd;intmain(){cout<<"*"<<setw(5)<<12...
#include <iostream>
#include <iomanip>
using namespace std;
int main ()
{
cout<<"*"<<setw(5)<<123;
cout.setf(ios::left);
cout<<"*"<<setw(5)<<123;
cout.setf(ios::right);
cout<<"*"<<setw(5)<<123<<"*"<<endl;
return 0;
}
运行结果中的空格用“%”表示 届时下每段代码相应的作用和结果!谢谢 展开
#include <iomanip>
using namespace std;
int main ()
{
cout<<"*"<<setw(5)<<123;
cout.setf(ios::left);
cout<<"*"<<setw(5)<<123;
cout.setf(ios::right);
cout<<"*"<<setw(5)<<123<<"*"<<endl;
return 0;
}
运行结果中的空格用“%”表示 届时下每段代码相应的作用和结果!谢谢 展开
1个回答
展开全部
*%%123*123%%*%%123*
默认跟right一样右对齐左留空,left表示左对齐右留空,setw指定输出宽度。
默认跟right一样右对齐左留空,left表示左对齐右留空,setw指定输出宽度。
追问
空格数跟setw后面的参数有什么关系?
还有
#include
#include
using namespace std;
int main ()
{
cout<<"*"<<setw(5)<<123<<endl;
cout.setf(ios::right); //left与rightd的区别是什么啊?
cout<<"*"<<setw(5)<<123<<endl;
cout.setf(ios::left);
cout<<"*"<<setw(5)<<123<<endl;
return 0;
}
谢谢啦
追答
setw指定下次输出数据占用的最小宽度,实际数据占不满这个宽度的时候就用空格填充。
left表示数据靠左摆放,右边补空格;
right表示数据靠右摆放,左边补空格。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询