2016-10-11 33 views
0

我最近開始在DEV C++中編程,並且遇到了一個問題,那就是搜索Googleshere並沒有證明有幫助。GDB在DEV C++在cout上停滯

在下面的代碼中,當GDB遇到第5行時,「掛起」,std::cout << "Hello" << std::endl;

#include <iostream> 
int main() 
{ 
    int tree = 9; 
    std::cout << "Hello" << std::endl; 
    tree = 10; 
    return 0; 
} 

程序編譯和運行得很好,但通過它步進總時被困在這裏既不「下一行」或「繼續」似乎工作。

下面是從GDB窗口中的一些輸出:

Starting program: C:\XXX\XXX\XXX\XXX\breakGDB.exe 
[New Thread 7300.0x2028] 

->->new-thread 
[New Thread 7300.0x2638] 

->->new-thread 

->->starting 

->->breakpoints-invalid 

->->frames-invalid 

->->breakpoint 1 

Breakpoint 1, 
->->frame-begin 0 0x40153d 

->->frame-function-name 
main 
->->frame-args 
() 
->->frame-source-begin 
at 
->->frame-source-file 
hello.cpp 
->->frame-source-file-end 
: 
->->frame-source-line 
5 
->->frame-source-end 


->->source C:\XXX\XXX\XXX\XXX\hello.cpp:5:38:beg:0x40153d 

->->frame-end 

->->stopped 

->->pre-prompt 
(gdb) 
->->prompt 

->->post-prompt 

->->frames-invalid 

->->starting 

->->frame-begin 0 0x44d2f0 

->->frame-address 
0x000000000044d2f0 
->->frame-address-end 
in 
->->frame-function-name 
std::ostream::operator<<(std::ostream& (*)(std::ostream&)) 
->->frame-args 
() 

->->frame-end 

->->stopped 

->->pre-prompt 
(gdb) 
->->prompt 

->->post-prompt 
Single stepping until exit from function _ZNSolsEPFRSoS_E, 
which has no line number information. 

->->frames-invalid 

->->starting 

->->frame-begin 0 0x46cf10 

->->frame-address 
0x000000000046cf10 
->->frame-address-end 
in 
->->frame-function-name 
std::basic_ostream<char, std::char_traits<char> >& std::endl<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&) 
->->frame-args 
() 

->->frame-end 

->->stopped 

->->pre-prompt 
(gdb) 
->->prompt 

我是很新的GDB。這是GDB的功能嗎?我的設置有誤嗎?這裏發生了什麼?

我已經把我的手指交叉了,這不是我的一些愚蠢的錯誤。

回答

-1

我有同樣的問題,並通過將編譯器集從64位調試切換到32位調試「解決」它。

仍然需要64位的解決方案。

// Dev-Cpp 5.11 TDM-GCC x64 4.9.2 Portable