关于cin.getline与getline

#include<iostream>
#include<string>
#include<iomanip>
using namespace std;

int main()
{
	string a;
	getline(cin, a,'\n');
	char b[100];
	cin.getline(b,100,'\n');
}

cin.getline为cin下的一个方法,用于为char类型字符串赋值;

getline则为<iomanip>库下的一个函数,用于为string类型字符串赋值,只是其可以输入流为参数。

两者均可读取空字符。

cin.getline(赋值对象,读取字符数,遇到该字符时终止赋值)

但当输入流遇到设定好的字符之后停止读取,剩余字符将会被保留在缓存中。

	string a;
	string pix;
	getline(cin, a, '?');//假设输入“111?234”
	cin >> pix;
//最终结果 a=“111”;pix=“234”;

而‘?’被省略了。

猜你喜欢

转载自blog.csdn.net/Tokameine/article/details/112439613
今日推荐