在linux中,vim是编译器,存在二种模式

  1. vim初始模式是命令模式,在命令模式下有很多种命令

gg:将光标移动到程序的首位

G:将光标移动到程序的尾部

8G:将光标移动到第8行

dd:剪切

u:撤销

yy:复制

p:粘贴

3yy:从光标处起复制3行

3dd:从光标处起剪切3行

shift4:将光标从行首移到行尾

shift6:将光标从行尾移到行首

shift ~:将光标处小写字母变成大写或者相反

X:删除光标前面的

x:删除光标处字符

w:以一个单词为单位向后跳转

h:光标向左以一个字符为单位移动

l:光标向右以一个字符为单位移动

k:光标向上移动

j:光标向下移动

5X:以光标前连续删除5个字符

b:以一个单词为单位向前移动

e:以一个单词为单位跳到行尾

yw;复制单词

r:替换

R:进入插入模式

2.插入模式

i:转入插入模式,光标位置没有变化

a:转入插入模式,光标位置有变化

o:转入插入模式,光标将上下中间隔一行

:/printf   光标直接到printf处

:8 定位到第8行

:set nu    设计行号

:set nonu  撤销行号

:vs 文件名 将一个文件复制到另一个文件

ctrl+w +h/l 从一个文件把光标跳转到另一个文件

vim下的预处理、编译、链接过程

预处理:使用-E参数可以让GCC在预处理结束后停止编译过程

gcc -E test.c -o test.i

编译:

gcc -S test.i -o test.s

汇编:

gcc -c test.s -o test.o

链接:

gcc test.o -o test

gdb:调试 是对可执行程序调试

gdb test 开始调试test

b 8 在第8行打断点

info b  进入断点

r 运行

n 单步执行

p count 调试过程中可以看到p值得变化

p &sum 调试过程中可以看到sum得地址

delete b 删除断点