gdb不接受用户输入

gdb不接受用户输入,第1张

概述我目前正在关注如何使用 this C program如何使用程序集和gdb,但是我遇到了一个问题.这是我编译和运行gdb的方法: chiggins@host:~/assem$gcc -ggdb -o SimpleDemo SimpleDemo.cchiggins@host:~/assem$gdb ./SimpleDemoGNU gdb (Ubuntu/Linaro 7.4-2012.04-0u 我目前正在关注如何使用 this C program如何使用程序集和gdb,但是我遇到了一个问题.这是我编译和运行gdb的方法:

chiggins@host:~/assem$gcc -ggdb -o SimpleDemo SimpleDemo.cchiggins@host:~/assem$gdb ./SimpleDemoGNU gdb (Ubuntu/linaro 7.4-2012.04-0ubuntu2) 7.4-2012.04copyright (C) 2012 Free Software Foundation,Inc.license GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.HTML>This is free software: you are free to change and redistribute it.There is NO WARRANTY,to the extent permitted by law.  Type "show copying"and "show warranty" for details.This GDB was configured as "x86_64-linux-gnu".For BUG reporting instructions,please see:<http://BUGs.launchpad.net/gdb-linaro/>...Reading symbols from /home/chiggins/assem/SimpleDemo...done.(gdb) List4       int add(int x,int y)5       {6               int z =10;78               z = x + y;9               return z;10      }1112      main(int argc,char **argv)13      {(gdb)14              int a = atoi(argv[1]);15              int b = atoi(argv[2]);16              int c;17              char buffer[100];1819              gets(buffer);20              puts(buffer);2122              c = add(a,b);23(gdb)24              printf("Sum of %d+%d = %d\n",a,b,c);2526              exit(0);2728      }(gdb) run 10 20Starting program: /home/chiggins/assem/SimpleDemo 10 20demo

现在从最后输入“demo”的地方开始,这就是程序应该接受用户输入的地方.但是当我在输入后按回车键时,没有任何反应.我无法ctrl c退出程序,无法做任何事情.我最终不得不从另一个会话中删除该进程,以便我可以控制回来.任何想法为什么gdb这样做,或者我可能做错了什么?

谢谢!

解决方法 我不确定为什么这对你不起作用;它按预期工作……

尽管如此,我发现在单独的终端中运行执行交互式I / O的程序更容易,也许它会对你有所帮助.

在一个终端,

$gdbserver --multi localhost:4242Listening on port 4242

而在另一个,

$gdb ./SimpleDemo(gdb) target extended-remote localhost:4242Remote deBUGging using localhost:4242(gdb) run 10 20

回到运行gdbserver的终端,

Remote deBUGging from host 127.0.0.1Process ./SimpleDemo created; pID=PIDdemodemoSum of 10+20 = 30Child exited with status 0
总结

以上是内存溢出为你收集整理的gdb不接受用户输入全部内容,希望文章能够帮你解决gdb不接受用户输入所遇到的程序开发问题。

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

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1226050.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-05
下一篇 2022-06-05

发表评论

登录后才能评论

评论列表(0条)

保存