c++的标准库模板函数getline在读到限定符后还要读取额外字符...
解决方法:进入

  • X:Program FilesMicrosoft Visual StudioVC98Include

打开string(注意,不是string.h),然后找到以下代码段. 将snextc()换成sbumpc()

else if (_Tr::eq((_E)_C,_D)) 
{_Chg = true; 
_I.rdbuf()->snextc(); // 把这一行注释掉,也可删掉 
_I.rdbuf()->sbumpc(); //添加这一行,这行本来没有 
break; 
}

现状:微软已经确认这是他们产品中的'臭虫'(bug),这个bug已经在Microsoft Visual C++ .NET得到修正.

本文固定链接: http://www.js-code.com/cpp/cpp_58806.html