Xcode STL C Debug编译错误

Xcode STL C Debug编译错误,第1张

概述我有一些文件编写代码按预期工作,但在调试模式下输出错误,在Release中没有输出错误. 码: #include <iostream>#include <string>#include <fstream>#include <sstream>using namespace std;int main (int argc, char * const argv[]) { string 我有一些文件编写代码按预期工作,但在调试模式下输出错误,在Release中没有输出错误.

码:

#include <iostream>#include <string>#include <fstream>#include <sstream>using namespace std;int main (int argc,char * const argv[]) {    string cppfilename;     std::cout << "Please enter the filename to create: ";    while ( cppfilename == "" ) {        getline(cin,cppfilename);    // error occurs here    }    cppfilename += ".txt";    ofstream fileout;    fileout.open( cppfilename.c_str() );    fileout << "Writing this to a file.\n";     fileout.close();    return 0;}

调试输出:

Please enter the filename to create: Running…myfilefileIO(5403) malloc: *** error for object 0xb3e8: pointer being freed was not allocated*** set a breakpoint in malloc_error_break to deBUGCreated: myfile.txt

发布输出:

fileIO implementation C++Please enter the filename to create: Running…myfileCreated: myfile.txt

除了没有检查文件描述符是否打开(为简单起见)这个代码有什么问题?

更新:我将代码分解为以下内容,但仍然存在错误:

string cppfilename;  getline(cin,cppfilename);    // error here
解决方法 这看起来是 _GLIBCXX_DEBUG being broken with gcc 4.2 on Mac OS X的另一个案例.

您最好的选择是删除_GliBCXX_DEBUG或切换到gcc 4.0.

总结

以上是内存溢出为你收集整理的Xcode STL C Debug编译错误全部内容,希望文章能够帮你解决Xcode STL C Debug编译错误所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1032572.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-24
下一篇 2022-05-24

发表评论

登录后才能评论

评论列表(0条)

保存