iOS   发布时间:2022-05-04  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Xcode STL C Debug编译错误大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

我有一些文件编写代码按预期工作,但在调试模式下输出错误,在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…
myfile
FileIO(5403) malloc: *** error for object 0xb3e8: pointer being freed was not allocated
*** set a breakpoint in malloc_error_break to debug
Created: myfile.txt

发布输出

FileIO implementation C++
Please enter the filename to create: Running…
myfile
Created: 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编译错误所遇到的程序开发问题。

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

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。