NOI Linux下Emacs && gdb调试方法

1. 首先要配置emacs文件:

 1 (global-linum-mode t)
 2 (show-paren-mode t)
 3 (global-set-key (kbd "C-s") 'save-buffer)
 4 (global-set-key (kbd "RET") 'newline-and-indent)
 5 (global-set-key [f9] 'compile)
 6 (global-set-key [C-f7] 'gud-gdb)
 7 (global-set-key (kbd "C-z") 'undo)
 8 (global-set-key (kbd "C-c") 'kill-ring-save)
 9 (global-set-key (kbd "C-v") 'yank)
10 (global-set-key (kbd "C-a") 'mark-whole-buffer)
11 (global-set-key (kbd "C-y") 'kill-whole-line)
12 (custom-set-variables
13   ;; custom-set-variables was added by Custom.
14   ;; If you edit it by hand, you could mess it up, so be careful.
15   ;; Your init file should contain only one such instance.
16   ;; If there is more than one, they won't work right.
17  '(inhibit-startup-screen t)
18  '(show-paren-mode t))
19 (custom-set-faces
20   ;; custom-set-faces was added by Custom.
21   ;; If you edit it by hand, you could mess it up, so be careful.
22   ;; Your init file should contain only one such instance.
23   ;; If there is more than one, they won't work right.
24  '(default ((t (:inherit nil :stipple nil :background "white" :foreground "black" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 113 :width normal :foundry "bitstream" :family "Courier 10 Pitch")))))

就是C-c, C-v, C-a, C-s, C-z, C-F7 和 F9的快捷键设置

 

2. 程序编译

先F9,输入 g++ -o xxx xxx.cpp -g -Wall (-Wl,-stack=1000000) 编译

C-F7调出gdb

 

3. gdb调试命令

先打:

1 b main
2 r

进入调试,各种调试命令:

单步执行:

n 表示next执行下一行,会跳过函数

s 同理,但不会跳过,而且会进入系统函数= =

fin 表示跳出当前函数,且返回函数值 ex:"Value returned is $1 = (const int &) @0x8058cfc: 1"

b x if xxx 调到x行,并且满足xxx

查看变量:

p x 查看当前变量x的值(同时可以查看数组,显示就和P的一样。。)

disp x 永久查看变量x的值

und 一次性去除所有查看信息

断点:

b x 在line x设置一个断点

c 跳到下一个断点

d 去掉所有断点

其他:

k 杀死进程

q 退出gdb

两次C-c 死循环时退出程序

set print pretty on/off 调试的时候看变量的格式修改

(p.s.  这里的C代表Ctrl键)

转载于:https://www.cnblogs.com/rausen/p/4204424.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值