定义一个结构体:
struct person
{
string name;
string phone;
};
从文件中导入数据。
int main()
{
person* p = (person*)malloc(sizeof(person));
ifstream ifstr("Input.txt");
ifstr >> p->name;
ifstr >> p->phone; -----注
return 0;
}
被标出的那段代码如果删掉就正确。增加一个clear。
ifstr >> p->name;
ifstr.clear();
ifstr >> p->phone;
上面还是会出错
然后用sstringstream做同样的实验。
一开始会报错,增加了clear之后就可以运行了。
请问这是为什么?
struct person
{
string name;
string phone;
};
从文件中导入数据。
int main()
{
person* p = (person*)malloc(sizeof(person));
ifstream ifstr("Input.txt");
ifstr >> p->name;
ifstr >> p->phone; -----注
return 0;
}
被标出的那段代码如果删掉就正确。增加一个clear。
ifstr >> p->name;
ifstr.clear();
ifstr >> p->phone;
上面还是会出错
然后用sstringstream做同样的实验。
一开始会报错,增加了clear之后就可以运行了。
请问这是为什么?
