1、多行字输入字符串的处理
-
当我们输入一行带空格的字符串,就要考虑getline函数,从流中读入一行字符串。
-
编程题一般输入为:
-
1、输入字符串行数,
-
2、然后再一行一行读入字符串。
-
问题:如果正常顺写编程的话,会发现第一行字符串读入的是空,后续才能正常录入每行字符串。
-
原因:因为第一行输入一个int数据后,换行符并没有被忽略,直接被准备读入第一行字符串的getline俘获。
-
解决:在第一行输入一个int数据后,第一次调用getline()前,调用cin.ignore()忽略下面的一个流录入,将其抛弃。
int N;
cin>>N;
cin.ignore();