1.具体用法:
getline(cin,inputline)//cin是正在读取的输入流,而inputline是接收输入字符串的string变量的名称
2.注意事项
1)如果在使用getline()之前有使用scanf(),那么需要用getchar()将前面的换行符读取,再使用getline()
2)getline()这个函数是可以读取空格,遇到换行符或者EOF结束,但是不读取换行符的
3)当我以#作为结束符时,#以及#后面的字符就不再读取
#include <iostream>
#include <string>
using namespace std;
int main (){
string name;
cout << "Please, enter your full name: ";
getline (cin,name,'#');
cout << "Hello, " << name << "!\n";
}
输出
Please, enter your full name: yyc#yyc
Hello, yyc!
4)我们经常需要将getline与while结合使用
例如:
string str;
while(getline(cin,str),str != "#"){
……
}
在这个例子中,逗号运算符的作用就是将最后一个式子作为判定的条件,即while判断的是str != "#"这个条件,只有当输入到str的为#键时,循环才会结束