0

我正在尝试运行此代码:

string p = "Test.txt";

ifstream fid(p.c_str());

while(!fid.eof()) {
    getline(fid,p);
    cout << "|s|" << p << "|e|" << endl;
}

但是结果 put 是这样的,因为它是这样的:

 |e|line1
 |e|line2
 ...

代替:

 |s|line1|e|
 |s|line1|e|
 ...

有人可以向我解释我做错了什么吗?

你的magu_

4

1 回答 1

0

谢谢 gx_ 的答案。

实际上我应该知道它,因为我在 Win/Linux 之间切换......

 p.erase(remove(p.begin(), p.end(), '\r'), p.end());

确实解决了问题。感谢您的帮助。我仍然想知道我的程序在做什么。但我想这是你不应该在上面构建程序的不稳定情况之一^^

再次感谢magu_

于 2013-06-11T06:02:30.227 回答