一般输入用cin就可以搞定了。
int a;
cin>>a;
但是有一天你会发现你在试图读入一串含有空格的字符串的时候,cin是干不了的,没错,因为cin是读不了空格的。
于是我们引入getline()。
#include <iostream>
using namespace std;
int main()
{
string a;
getline(cin,a,'\n');
cout<<a;
}
这个函数有三个参数,第一个是输入流如cin,第二个是写入的地方,第三个是输入结束标志,就是告诉程序遇到什么字符停止读入,也可以不写,默认遇到回车符停止读入。即上面的程序也可以写成下面这样。
#include <iostream>
using namespace std;
int main()
{
string a;
getline(cin,a);
cout<<a;
}
然后你会发现,getline()只能用于string类。
要读char的一串,就要用cin.getline()。
#include <iostream>
using namespace std;
int main()
{
char a[90];
cin.getline(a,80);
cout<<a;
}
第一个参数是写入的地方,第二个参数是表明在第几个位置放'\0',即放字符串的结束符。
这个函数只能用于char型。