挑战30天C 入门极限:C 的iostream标准库介绍以及对左移与右移运算符的重载3
文章作者 100test 发表时间 2007:03:10 17:12:38
来源 100Test.Com百考试题网
C语言提供了格式化输入输出的方法,C 也同样,但是C 的控制符使用起来更为简单方便,在c 下有两中方法控制格式化输入输出。
1.有流对象的成员函数。
例如,下列程序以成员函数的方式控制输出的精度:
//程序作者:管宁
//站点:www.cndev-lab.com
//所有稿件均有版权,如要转载,请务必著名出处和作者
#include <iostream>
using namespace std.
int main()
{
float pi=3.14159f.
cout< cout.precision(2).
cout< system("pause").
}
2.使用C 输入输出控制符,控制符是在拖文件iomanip.h中定义的对象,与成员函数有一样的效果,控制符不必像成员函数学那样单独调用,它可以直接插入流中使用。
例如,下列程序以控制符的方式控制输出的精度:
//程序作者:管宁
//站点:www.cndev-lab.com
//所有稿件均有版权,如要转载,请务必著名出处和作者
#include <iostream>
#include <iomanip>
using namespace std.
int main()
{
float pi=3.14159f.
cout< cout< cout< system("pause").
}
下表我们列出了一些比较常用的控制符号,由于篇幅有限读者请根据自己的需要查阅相关书籍:
控制符 |
描述 |
Dec |
置基数为10 |
Hex |
置基数为16 |
Oct |
置基数为8 |
Endl |
插入换行符,并刷新流 |
Ends |
插入空字符 |
setfill? |
设填充字符为c |
setprecision(n) |
设显示小数精度为n位 |
setw(n) |
设域宽为n个字符 |
setiosflags(ios::fixed) |
固定的浮点显示 |
setiosflags(ios::scientific) |
科学计数法 |
setiosflags(ios::left) |
左对齐 |
setiosflags(ios::right) |
右对齐 |
setiosflags(ios::skipws) |
忽略前导空白 |
setiosflags(ios::uppercase) |
16进制数大写输出 |
setiosflags(ios::lowercase) |
16进制数小写输出 |
对于iostream标准库来说包含了众多的成员函数,各函数都有其自身的作用,篇幅问题笔者在这里不能一一说明例举,由于标准输入对象cin提供输入的时候会自动以空格作为分界,给我们获取一行带有空格的完整字符串带来了困难,在这里补充一个非常用有的成员函数----getline()。
其函数原型为:
getlin(chiar *str,int size,char= \n ).
第一个参数是字符数组,用于存放整行文本,第二个参数读取的最大字符个数,第三个参数为作为分界界限的字符,默认识是\n,换行符。
示例代码如下:
//程序作者:管宁
//站点:www.cndev-lab.com
//所有稿件均有版权,如要转载,请务必著名出处和作者
#include <iostream>
#include <iomanip>
using namespace std.
int main()
{
char str[100].
cin.getline(str,sizeof(str), \n ).
cout< system("pause").
}
通过上面内容的学习,我们对i/o有了一些基本点基本的认识,现在是该切入正题的时候了,详细学习一下,如何重载左移与右移操作符。