课堂笔记及学习笔记
测试一
- 用Vi输入图中代码,并用gcc编译
- 通过在src目录下输入命令行
gcc -I/头文件所在路径 *.c -o ../bin main
完成编译。
- 通过在src目录下输入命令行
- 在Vi中使用K查找printf的帮助文档
- 在文件夹中的终端输入
vim main.c
,再次敲击回车进入该函数的编辑界面。 将光标移动到printf语句上,然后输入大写K显示帮助文档。
测试二
- 用gcc进行预处理,编译,汇编,链接vi输入的代码
- 预处理:
gcc -E hello.c -o hello.i
- 编译:
gcc -S hello.i -o hello.s
- 汇编:
gcc -c hello.s -o hello.o
链接:
gcc hello.o -o hello
测试三
- 预处理:
- 在文件夹中的终端输入
- 1.用gcc -g编译vi输入的代码
2.在main函数中设置一个行断点
3.在main函数增加一个空循环,循环次数为自己学号后4位,设置一个约为学号一半的条件断点- 打开终端输入
gcc -g *.c -o test
生成一个可执行gdb文件test
- 输入
gdb test
进入gdb调试模式,再输入l显示test文件内容。 - 在test中写入一个`for(i=0;i<5322;i++)的空循环用来检测断点。在gdb调试窗口输入b main在主函数第一行设置一个断点,然后再输入b 6 if i==2661即在第2661次循环处设置另一个断点。再输入info break显示断点信息,然后再输入r运行程序,遇到断点会显示断点内容,因为该循环设置为空,所以循环处断点没有内容显示。若再循环内设计一个计数器,循环内断点处会显示计数为2661。
- 打开终端输入