今天给大家主要介绍vim编辑器,gcc编译器,gdb调试器,shell脚本。
一 vim编辑器
vim+文件名意思为创建及打开
vim一共有3种模式。
1.命令模式:
vim刚开始打开的时候就是命令模式,在命令模式中
x 是删除一个字符,nx 是删除n个字符;
dd是删除(剪切)一行,ndd 是删除(剪切)n行;
p是粘贴;
yy是复制一行,nyy 是复制n行;
shift+g 是跳到最后一行,gg:回到第一行;
*查找光标所在字符,n(next)查找下一个;
u:撤销;
在命令模式中,shift+zz直接保存退出文件。
2.插入模式
按a或者i可以进入插入模式,esc退出插入模式进入命令模式;
在插入模式中,必须先回到命令模式才能进入底行模式!
3.底行模式
“:” 进入底行模式,w保存,q退出;
“:+数字” 直接跳到对应行;
w!强制保存;
sp+文件名:打开另一个文件,ctrl+ww可以上下移动光标;
“/+xxx”:查找xxx,n查找下一个,shift+n查找上一个;
/:也可以直接进入底行模式;
:%s/aaa/bbb/g:将aaa字符串替换成bbb,g是所有的意思;
set+nonu(no number):关闭行号,set+nu :打开行号
二 gcc编译器
主要给大家讲解gg编译器编译的4个过程:预处理、编译、汇编、链接。
1预处理
如:gcc -E hello.c -o hello.i
处理所有以“#”开头的代码;
(1)头文件展开(2)宏文件替换(3)条件编译
2.编译
gcc -S hello.i -o hello.s
把c代码翻译成汇编代码
3.汇编
gcc -c hello.s -o hello.o
把汇编代码翻译成二进制代码
4.链接
gcc 所有.o文件 -o hello
链接程序需要用到的其他文件
除4个过程外,再介绍2个指令:
- gcc -I(大写i) :指定头文件路径
- gcc -static :静态链接
- make clean :删除所有中间文件
三 gdb 调试器
通过运行命令“gcc test.c -o test -g” 其中参数 g 的作用是把调试信息加入生成的test 可执行文件中,否则GDB就无法对test进行调试;
接下来就使用"gdb test" 启动调试,下面仅对一些常用命令进行介绍。
- 查看源文件。通过命令l (list的缩写),可以查看所有的代码行数
- 设置断点。b(breakpoint的缩写),
- 查看断点情况。info b
- 运行程序。r(run),如果程序中有断点,程序会在断点行数前一行暂停运行。
- 查看变量值。p(print),GDB通过"$N"($1,$2)来显示变量的值
- 继续运行程序。c(contiune)
- 单步运行。s(step)、n(next).其中s可以在发生函数调用时进入函数内部运行,而n不会进入函数内部运行。
shell脚本