[关闭]
@iwktd981220 2017-11-18T08:27:54.000000Z 字数 603 阅读 330

关于字符串的课堂学习

总结笔记


主要内容

  1. cin.get和cin.getline用法及区别
  2. *字符串的基本操作以及函数

cin.get && cin.getline

起因

上了课,觉得并不熟悉这类的命令,因为基本都不用神奇的字符串,但是我觉得还是有必要记录一下的。

不说了,先上两份code:

  1. void cinget_cingetline() {
  2. char a[20];
  3. char b[20];
  4. cin.get(b,20,'.');
  5. cout<<b<<endl;
  6. cin.getline(a,20,'.');
  7. cout<<a<<endl;
  8. }

再看第二份,是不是很相似?!

  1. void cinget_cingetline() {
  2. char a[20];
  3. char b[20];
  4. cin.getline(a,20,'.');
  5. cout<<a<<endl;
  6. cin.get(b,20,'.');
  7. cout<<b<<endl;
  8. }

实际上就是先cin.getline 还是cin.get 的区别而已。
那么输出有什么区别呢?
当然有,先看一段ppt的描述:

cin.get将结束字符留在输入流中,而cin.getline将结束字符从输入流中删除

这样带来的后果是什么呢?让我们看看。

第一份:
theFirstCin

第二份:
theSecondCin

出现原因:cin函数是直接从缓冲区取数据的,所以有时候当缓冲区中有残留数据时,cin函数会直接取得这些残留数据而不会请求键盘输入。

可供参考的一个链接:链接

*字符串函数介绍

一图蔽知:

theStringFunction

用处不大,不再赘叙。

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注