一、Review
1、编译的四个过程:预处理-》编译-》汇编-》链接
预编译: gcc-E test.c -o test.i |
预编译头文件 |
编译:gcc -S -test.i -o test.s |
将高级语言源程序编程汇编指令 |
汇编:as test.s -o test.o |
将汇编指令变成机器指令 |
链接:gcc -o test test.o |
将机器指令编程二进制可执行文件 |
2、动态库和静态库
(1)静态库:编译时被编入可执行程序,可执行程序执行时不依赖静态库
(2)动态库:编译时不会被编入可执行程序,只是做动态链接,可执行程序执行时依赖动态库
3、gdb
(1)gdb调试前,需要在编译时加入-g参数,命令为gcc -g main.c
(2)之后输入指令gdb a.out
(3)传递参数使用命令set args 3 4
(4)显示参数show args
(5)有一个数组名,看该数组的内存空间 x /20xb &arr
(6)进入一个函数 s
(7)从当前函数运行出来finish
(8)运行至断点c
(9ÿ