gpt4 book ai didi

c++ - 我正在使用 gdb 调用一个简单的 C++ 函数,但它失败了

转载 作者:太空狗 更新时间:2023-10-29 23:04:10 24 4
gpt4 key购买 nike

程序很简单:

#include<iostream>
using namespace std;

void test(){ cout<<"hello from function"<<endl; }

int main(){
cout<<"hello from main"<<endl;
return 0;
}

然后我编译了这个程序如下:

g++ -g main.cpp -o main

打开gdb,设置断点并运行。

Breakpoint 1, main () at main.cpp:9
9 cout<<"hello from main";

然后调用函数:

(gdb) call test()
(gdb)

没有任何反应......为什么???

最佳答案

您在断点处的 GDB 输出与您的源不匹配(缺少 endl)。

我猜你在GDB下运行它时忘记在test()中添加endl,在这种情况下行为由于缓冲,您在 GDB 下是预期的

尝试按照当前声明的方式完全重建您的程序,然后再次在 GDB 下重新运行它。它现在很有可能会起作用。

关于c++ - 我正在使用 gdb 调用一个简单的 C++ 函数,但它失败了,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23517345/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com