实验二:vim、gcc、makefile
1.实验目的:
(1)熟悉vim的使用方法;
(2)用gcc编译简单的c程序;
(3)用makefile和make编译复杂的c程序;
(4)熟悉gdb调试程序。
2.实验内容
(1)vimtutor打开官方教程,熟悉vim的使用方法
(2)用gcc编译实验一中的main.c,生成可执行文件名称为sum,运行该可执行文件,查看结果。然后用gdb对该程序进行调试,通过gdb查看源代码、在第4行和第8行打两个断点,分别用next、step和continue的方式执行程序,再删除掉第4行的断点。
(3)将main.c中的实现求和功能的语句写成一个独立的sum函数,要求能够手动从键盘输入N的值,包含sum.h和sum.c,放在main.c相同文件夹下,编写对应的makefile文件,用make工具实现对整个工程的编译,编译成功后执行该程序,查看程序输出结果,然后删除掉编译过程中生成的中间文件。记录过程中遇到的问题,并解释其解决方法。
(4)书上43页2.2.2GDB调试器使用实例、45页2.3.1第一个makefile文件,两部分在自己电脑上复现,并截图说明整个过程。
3.实验过程:
3.1vimtutor打开官方教程,熟悉vim的使用方法
vim
3.2用gcc编译实验一中的main.c,生成可执行文件名称为sum,运行该可执行文件,查看结果。然后用gdb对该程序进行调试,通过gdb查看源代码、在第4行和第8行打两个断点,分别用next、step和continue的方式执行程序,再删除掉第4行的断点。
(1)首先用gcc -o sum main.c 将实验一中的main.c生成可执行文件名称sum,并运行,如图:./sum及运行
vim main.c
ls
gcc -o sum main.c
ls
./sum
(2)然后用gdb对该程序进行调试,通过gdb查看源代码、在第4行和第8行打两个断点,分别用next、step和continue的方式执行程序,再删除掉第4行的断点
gdb
用break 4和break 8进行断点并查看
用next和step进行函数调用,并用clear 4清除第四个断点,如下图:
3.3将main.c中的实现求和功能的语句写成一个独立的sum函数,要求能够手动从键盘输入N的值,包含sum.h和sum.c,放在main.c相同文件夹下,编写对应的makefile文件,用make工具实现对整个工程的编译,编译成功后执行该程序,查看程序输出结果,然后删除掉编译过程中生成的中间文件。记录过程中遇到的问题,并解释其解决方法。
mkdir 文件名
mkdir -p 文件名/文件名1/
ls
cd 文件名
touch main.c
cd 文件名1
vim main.c
这是sum.c的代码
这是sum.h的代码
这是main.c的代码
这是makefile的代码
然后输入代码make如下图:
最后再用ls查看一下有哪些文件,输入./main.c即可运行,如下图:
删除掉编译过程中生成的中间文件
3.4书上43页2.2.2GDB调试器使用实例、45页2.3.1第一个makefile文件,两部分在自己电脑上复现,并截图说明整个过程。
45页2.3.1第一个makefile文件,如下图: