2011-12-10 61 views
2

每當我建+運行我的程序,它會顯示所有這些額外的東西:Xcode和C++ [Beginner] - 爲什麼Hello World程序打印所有這些額外的東西?

GNU GDB 6.3.50-20050815(蘋果版GDB-1708)(星期四11月3日21時59分02秒 UTC 2011) Copyright 2004 Free Software Foundation,Inc. GDB免費 軟件,由GNU通用公共許可證管理,歡迎您在 條件下對其進行更改和/或分發其副本。輸入「show copying」查看條件。對於GDB,絕對不存在 。請輸入「顯示保修」以瞭解詳情。 這個GDB被配置爲「x86_64-apple-darwin」.tty/dev/ttys000 [切換到進程3022線程0x0]

Hello,World!

計劃endedwith退出代碼:0

這裏是世界您好,默認代碼:

#include <iostream> 

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

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

爲什麼打印所有多餘的東西,我怎麼能阻止它?我正在使用Xcode和C++。謝謝。

+0

我以前從未使用Xcode的,但你可以調試和選擇發佈版本,如果是這樣,它會改變它從運行而不是通過gdb運行? – AusCBloke

回答

6

它打印所有額外的東西,因爲它在調試器中運行您的可執行文件。您可以從所有輸出改變彈出窗口只是「目標輸出」一樣顯示在下面的圖片:

enter image description here

enter image description here

+1

@Bob:如果你喜歡他的答案不要忘記標記爲已接受。 – Matt

+1

+1屏蔽 – James

1

構建應用程序,然後從命令行(在終端中)運行它,您將看不到任何GDB的東西。

如果你想進行調試,你會看到(並最終忽略)這些額外的行。

檢查真的很快,我看到Apple的新調試器(LLDB)在XCode的調試輸出/控制檯中打印出少量「額外」的東西。

1

gdb是GNU調試器。以IDE的方式運行似乎默認在調試器下運行。簡而言之,它與你的代碼無關,並且與你所使用的環境有關。

+0

我之前製作了一個程序,雖然沒有打印額外的東西,但是同一個IDE。所以我知道當我在Xcode中編譯+運行我的代碼時,可以防止文本出現,但我不確定是什麼改變了(兩個程序都啓用了GNU調試器。) – Philosobot

相關問題