vc6.0 中getline需要按两次回车的解决方法

来源:互联网 发布:php无法加载控制器 编辑:程序博客网 时间:2024/04/29 03:47

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

  • X:\Program Files\Microsoft Visual Studio\VC98\Include

打开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得到修正.

0 0