标签:学习 添加 测试 break 查看 dct -o 文件中 cot
一、目录:
二、学习内容:
gcc+选项+文件名
-E:仅执行编译预处理
-S:将C代码转换成汇编代码
-c:仅执行编译操作,不进行链接
-o:指定生成输出文件
-I:指定头文件目录
-l:指定程序需链接的库
-L:指定库文件所在的目录名
gcc -E hello.c -o hello.i
gcc -S hello.i -o hello.s
gcc -c hello.s -o hello.o
objdump -d hello.o
gcc hello.o -o hello
gcc test_a.c text_b.c -o test / gcc *.c -o test
gcc -c test_a.c
gcc -c test_b.c
gcc -o test_a.o test_b.o -o test
h 向左移动光标
l 向右移动光标
j 向下移动光标
k 向上移动光标
w 移动到下一个单词
:wq+回车键
,Esc+Shift+zz
Esc+q!
gdb programm
(启动GDB)run
开始运行程序bt
打印函数调用堆栈p
查看变量值c
从当前断点继续运行到下一个断点n
单步运行s
单步运行quit
退出GDB大写“K
”可以用来查找函数的帮助信息:查看 man page
,命令模式下,将光标放在函数名上,按"K"可以直接察看 man page。
break x
(x表示设置断点位置的行号)
delete x
(x表示删除断点的行号)
list
显示带行数的代码
start+cotinue=run
运行
s+c=r
watch b
观察变量b的值,变化时程序停止
s
进入函数内部
n
单步调试
quit
退出gdb
info b
查看断点信息并保存
save breakpoint fig.dp
保存断点到fig.dp中
gdb hello2 -x fig.dp
调试时读取保存断点文件
vim Makefile
.DCT:clean
rm –rf *.o
编译和执行(make:编译, ./all:执行)三、代码调试中的问题和解决过程
四、感想:
在学习初期,由于大写的i(I),和小写的L(l)经常分不清楚,所以导致了很多编译错误,浪费了一些时间,多熟悉gcc相关的指令,便会避免出现这种问题,通过使用蓝魔云的视频学习,自己不太懂的知识点可以反复观看,但还是有一些知识点不太能掌握,还需巩固。
五、PSP:
------ | 代码行数 | 博客量 | 学习时间 |
---|---|---|---|
目标 | 5000 | 25篇 | 400小时 |
第一周 | 63/63 | 1 | 7 |
2019-2020-1 20175325 《信息安全系统设计基础》第1周学习总结
标签:学习 添加 测试 break 查看 dct -o 文件中 cot
原文地址:https://www.cnblogs.com/sgm5/p/11568696.html