cin 和getline 混合使用的疑问
举例
int n;
string s;
ifstream in("in.txt");
in>>n;
getline(in,s);
---------------
in.txt内容
___
3
sadhhh
读取3后依然停留在第一行 这时候getline还是读取的第一行
该怎么处理让它从下一行开始getline呢
[解决办法]
换行符没有过滤掉,这样改:
#include <iostream>
#include <fstream>
using namespace std;
int main(int argc, char* argv[])
{
int n;
char c;
string s;
ifstream in("in.txt");
in >> n;
c = in.get();
getline(in, s);
cout << n << endl;
cout << s << endl;
return 0;
}