挑战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有了一些基本点基本的认识,现在是该切入正题的时候了,详细学习一下,如何重载左移与右移操作符。



相关文章


挑战30天C 入门极限:使用Eclipse3.01 MinGW3.1配置标准C_C 开发环境详解
2002年9月全国计算机等级考试二级C语言试卷(含答案)
二级C 类与对象:static静态数据成员静态成员函数
挑战30天C 入门极限:C 的iostream标准库介绍以及对左移与右移运算符的重载3
1998年4月全国计算机等级考试二级C语言试卷(含答案)
挑战30天C 入门极限:C 的iostream标准库介绍以及对左移与右移运算符的重载2
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛