【发布时间】:2014-01-11 10:20:18
【问题描述】:
我正在尝试用 C++ 完成一个简单的初学者任务。我有一个包含该行的文本文件 “约翰史密斯 31”。而已。我想使用 ifstream 变量读取这些数据。但我想将名称“John Smith”读入一个字符串变量,然后将数字“31”读入一个单独的 int 变量。
我尝试使用getline函数,如下:
ifstream inFile;
string name;
int age;
inFile.open("file.txt");
getline(inFile, name);
inFile >> age;
cout << name << endl;
cout << age << endl;
inFile.close();
问题在于它会输出整行“John Smith 31”。有没有一种方法可以告诉 getline 函数在它获得名称后停止,然后“重新启动”来检索号码?不操纵输入文件,那是什么?
【问题讨论】:
-
如果你不想读一行,不要打电话给
getline。真的就是这么简单。