getline的字符串读入

Posted Mudrobot

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了getline的字符串读入相关的知识,希望对你有一定的参考价值。

也许是最近模拟题打多了的缘故,我发现自己渐渐变得比较毒瘤起来,当然这也是有一定的好处的,因为从中我也学到了一些处理字符串的正确姿势,今天我们就来讲一 讲如何用函数getline来读入一整行字符串进行处理。或者他的一些变体。

首先我们先需要知道为什么我们要学习这个函数,是这样的,相信大家都应该知道以前有一个函数叫做gets,这个函数非常的好用,你可以非常快捷的使用他来进行一整行字符串的输入,但是这个函数不知道为什么在正式的比赛中,很容易使用它而导致挂掉,而又因为最基本的读入getchar本人在写的时候,也经常会出现一些意想不到的错误,所以我们急需一个可以既安全的能够读入字符串的函数,又并不是非常的难书写,这里就要引入getline了。

 

因为string类型非常的慢,所以考试的时候我们基本上不用,这个类型,所以说我们只需要掌握一下,getline关于字符串(char)类型的输入就可以了。然后这个其实也还是非常的简单的。

getline这个函数是属于iostream库的,然后我们只需要在代码中写这一句话即可

cin.getline(字符串名,字符串大小,*条件

然后这个关于条件这个东西,一般不填,如果不填,默认读到回车时结束,如果填了,那么 就会读到你想要指定的那个字符前停止读入。

 

标准代码如下:

 

#include<iostream>
using namespace std;
char ch[1024];
int main()
{
    cin.getline(ch,1024,\'E\');
        cout<<ch;
    cout<<"A";
}

运行结果:

 

相信大家应该都会使用getline了。

谢谢采纳!

以上是关于getline的字符串读入的主要内容,如果未能解决你的问题,请参考以下文章

cin 不能直接读入空格,可以用getline(PAT统计字符数)

getline()函数的使用

getline()函数

[PAT乙级]1033 旧键盘打字(getline()读入)

读入字符串的方法

字符串的输入输出 附带一道练习题