C++之预定义类型IO格式控制 |
您所在的位置:网站首页 › width函数可以用来设置域宽吗 › C++之预定义类型IO格式控制 |
在C语言里,我们可以通过函数printf和scanf来进行格式化控制。而在C++中仍然包含了前者,但还提供了以下两种格式控制的方法:(1)使用流成员函数进行格式控制;(2)使用预定义操作符进行格式控制。下面我来一一介绍: 1.流成员函数主要是指ios类(流基类)中的,分别有: (1).设置状态标志流成员函数setf 一般格式:long ios::setf(long flags),调用格式:流对象.setf(ios::状态标志) ios类的状态标志有: 因为状态标志在ios类中定义为枚举值,所以在引用这些值前要加上ios::,如果有多项标志,中间则用"|"分隔; (2).清除状态标志流成员函数unsetf 一般格式:long ios::unsetf(long flags),调用格式:流对象.unsetf(ios::状态标志); (3).设置域宽流成员函数width 一般格式:int ios::width(int n),调用格式:流对象.width(n);//注:它只对下一个流输出有效,输出完成后,恢复默认值0 (4).设置实数的精度流成员函数precision 一般格式:int ios::precision(int n),调用格式:流对象.precision(n);//注:参数n在十进制小数形式输出时代表有效数字。在以fixed形式和scientific形式输出时代表小数位数 (5).填充字符流成员函数fill 一般格式:char ios::fill(char ch),调用格式:流对象.fill(ch);//注:当输出值不满宽域时用填充符来填充,默认填充符为空格,它与width函数搭配。 下面用示例来验证: 1 #include "stdafx.h" 2 #include 3 #include 4 5 int main() 6 { 7 std::cout.setf(std::ios::left|std::ios::showpoint|std::ios::unitbuf); 8 std::cout.precision(6); 9 std::cout |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |