Xcode和C ++ [初学者] - 为什么Hello World程序打印所有这些额外的东西?

时间:2011-12-10 01:20:30

标签: c++ xcode macos

每当我构建+运行我的程序时,它会显示所有这些额外的东西:

  

GNU gdb 6.3.50-20050815(Apple版gdb-1708)(11月3日星期四21:59:02)   UTC 2011)版权所有2004 Free Software Foundation,Inc。GDB是免费的   GNU通用公共许可证涵盖的软件,您就是   欢迎更改和/或在某些情况下分发它的副本   条件。输入“show copying”查看条件。有   绝对不保证GDB。输入“show warranty”了解详情。   此GDB配置为“x86_64-apple-darwin”.tty / dev / ttys000   [切换到进程3022线程0x0]

     

你好,世界!

     

程序以退出代码结束:0

这是Hello World,默认代码:

#include <iostream>

int main (int argc, const char * argv[])
{

    // insert code here...
    std::cout << "Hello, World!\n";
    return 0;
}

为什么打印所有额外的东西,我怎么能阻止它?我正在使用Xcode和C ++。感谢。

3 个答案:

答案 0 :(得分:6)

它正在打印所有这些额外的东西,因为它在调试器中运行你的可执行文件。您可以将弹出窗口从“全部输出”更改为“目标输出”,如下图所示:

enter image description here

enter image description here

答案 1 :(得分:1)

构建应用程序,然后从命令行(在终端中)运行它,你将看不到任何GDB内容。

如果您想进行调试,您会看到(并最终忽略)这些额外的行。

非常快速地检查,我发现Apple的新调试器(LLDB)在XCode的调试输出/控制台中打印出的“额外”内容显着减少。

答案 2 :(得分:1)

gdb是GNU调试器。以这种方式在IDE中运行似乎默认在调试器下运行。简而言之,它与您的代码无关,也与您正在使用的环境有关。