CXYVIP官网源码交易平台_网站源码_商城源码_小程序源码平台-丞旭猿论坛
CXYVIP官网源码交易平台_网站源码_商城源码_小程序源码平台-丞旭猿论坛
CXYVIP官网源码交易平台_网站源码_商城源码_小程序源码平台-丞旭猿论坛

C++学习笔记之——输入和输出-免费源码丞旭猿

在 C++ 中,我们通过调用输入输出流库中的流对象 cin 和 cout 来实现输入和输出。
includeusingnamespacestd;intmain(){inta=0;floatb=0;charc=0;cin>>a>>b>>c;cout<<a<<\t<<b<<\t<<c<<\t<<endl;return0;}56Enter5.36EnteraEnter565.36a

在用 cin 进行输入时,我们不用指定具体的数据类型,系统会根据变量的类型从输入流中提取相应长度的字节。同样,用 cout 进行输出时,系统也会自动判别输出数据的类型使输出的数据按相应的类型输出。

通过 cin 读入数据时,会自动跳过输入流中的空格、tab 键和换行字符。当遇到无效字符或者文件结束符时,输入 cin 就会处于出错状态,我们可以通过判断 cin 的值来判断流对象是否处于正常状态和提取操作是否成功。

另外,我们还可以使用控制符来设置输入输出的格式。

includeincludeusingnamespacestd;intmain(){inta=256;floatb=3.1415926525;cout<<b<<endl;cout<<setprecision(9)<<b<<endl;// 设置精度cout<<setiosflags(ios::fixed)<<setprecision(2)<<b<<endl;// 设置小数点位数cout<<endl<<a<<endl;cout<<hex<<a<<endl;// 十六进制输出cout<<dec<<setfill(*)<<setw(5)<<a<<endl;// 设置域宽和填充cout<<setiosflags(ios::showpos)<<a<<endl;// 显示符号cout<<resetiosflags(ios::showpos)<<a<<endl;// 取消显示符号return0;}3.141593.141592743.24256100**256+256256

也可以使用 cout 的成员函数来设置输入输出的格式。

includeusingnamespacestd;intmain(){inta=256;floatb=3.1415926525;cout<<b<<endl;cout.precision(9);// 设置精度cout<<b<<endl;cout.precision(2);cout.setf(ios::fixed);// 设置固定小数点位数cout<<b<<endl;cout<<endl<<a<<endl;cout.setf(ios::hex,ios::basefield);cout<<a<<endl;cout.fill(*);// 设置填充cout.width(5);// 设置域宽cout<<a<<endl;cout.setf(ios::showpos);// 显示符号cout<<a<<endl;cout.unsetf(ios::showpos);// 取消显示符号cout<<a<<endl;return0;}3.141593.141592743.24256100**256+256256

为了与 C 语言兼容,C++ 保留了 C 中的 scanf 和 printf 函数进行输入输出,以及 getchar 和 putchar 函数进行单个字符的输入输出。

此外,我们还可以用输入输出流对象的一些成员函数来实现输入和输出。

  • cout.put()输出单个字符,可以连续输出
  • cin.get()读入一个字符(包括空白字符),返回读入成功的字符,如遇到文件结束符,返回 EOF
  • cin.get(ch)读入一个字符并赋值给变量 ch,成功读入则返回真
  • cin.get(字符数组或指针,字符个数 n,终止字符) 读入 n-1 个字符,如遇到终止字符则提前结束
  • cin.getline(字符数组或指针,字符个数 n,终止字符) 与上面的 cin.get 类似,但是遇到终止字符时,字符指针会移到该终止字符后面,而 cin.get 则会停留在原位置
includeusingnamespacestd;intmain(){charch[20]={0};cin>>ch[0];// 读入 1cout.put(ch[0]);cout<<endl;ch[1]=cin.get();// 读入 2cout.put(ch[1]);cout<<endl;cin.get(ch[2]);// 读入 3cout.put(ch[2]);cout<<endl;cin.get(ch,20,/);// 读入 123 之后的第一个回车以及 hello, seniusen! h 共计 19 个字符cout<<ch<<endl;cin.get(ch,20,/);// 读入ello, seniusen! 共计 15 个字符,遇到终止字符 ‘/’ 停止cout<<ch<<endl;cin.getline(ch,20,/);// 当前字符指针还停留在字符 ‘/’ 处,直接停止读入,字符指针后移一位指向空格cout<<ch<<endl;cin.getline(ch,20,/);// 读入 hello, seniusen! 共计 17 个字符,遇到终止字符 ‘/’ 停止cout<<ch<<endl;return0;}123Enter123hello,seniusen!hello,seniusen!/hello,seniusen!/Enterhello,seniusen!hello,seniusen!hello,seniusen!

一些其他的成员函数:

  • cin.eof()如果到达文件末尾(遇文件终止符)返回真,否则返回假
  • cin.peek()返回当前指针指向的字符,但只是观测,指针仍然停留在当前位置
  • cin.putback(ch)将字符 ch 返回到输入流,插入到当前指针位置
  • cin.ignore(n, 终止字符) 跳过输入流中 n 个字符,若遇到终止符提前结束,此时指向终止字符后面一个位置

声明:本文部分素材转载自互联网,如有侵权立即删除 。

© 版权声明
THE END
喜欢就支持一下吧
点赞0赞赏 分享
相关推荐
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容