使用ostringstream导致程序崩溃

时间:2015-08-18 17:50:52

标签: c++ visual-studio-2013 crash

我需要维护一些在Windows 2003上运行的旧C ++应用程序/服务(不是选择)。我已经完成了所有设置和使用VS 2013的东西,但现在我无法让任何C ++项目再次运行。他们只是崩溃了。我把它缩小到使用stringstream时所以我写了一个示例Win32 exe来测试。

这些是我在VS 2013 Update 5中更改的唯一设置: 设置为使用Platform Toolset = Visual Studio 2013 - Windows XP(v120_xp)。字符 Set =使用多字节字符集。

int _tmain(int argc, _TCHAR* argv[])
{
    ostringstream zs;
    zs << "Hello";
    string strTemp = zs.str();
    printf("%s\n", zs.str().c_str());

    return 0;
}

它在zs&lt;&lt;上崩溃了&#34;你好&#34 ;;

1 个答案:

答案 0 :(得分:1)

在Visual Studio 2013及更高版本中,用于多字节字符编码(MBCS)的MFC库是作为Visual Studio的单独插件提供的,可以从MSDN下载站点下载。

https://msdn.microsoft.com/en-us/library/5z097dxa.aspx