Vim及gcc/g++使用

一:vim使用
首先了解三种常用模式:
普通模式是控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入插入模式或者到底行模式。
插入模式:只有在插入模式下,才可以做文字输入,按ESC可以回到普通模式。
底行模式:文件保存或退出,也可以进行文件替换,找字符串,列出行号等操作。
这里写图片描述
插入模式:
i:按i从普通转换插入模式,是从光标当前位置开始输入;
a:按a从普通模式转换为插入模式,是从光标下一个位置进行输入;
o:按o从普通模式转换为插入模式,是插入新的一行,从行首开始进行输入;
I:按I从普通模式转换为插入模式,是从该行首位置进行输入;
A:按A从普通模式转换为插入模式,是从该行行末进行输入;
O:按O从普通模式转换为插入模式,是从该行上行插入新的一行进行输入。
底行模式
如果在插入模式要到底行模式,需要先按esc回到普通模式,在按:到底行模式;如果在底行模式需要到普通模式可以按两下esc。
[:w]是保存文件;
[:q]是退出,如果没有先保存会有警告
[:wq]是保存并退出。
[:q!]是强制退出,不保存。
[:!pwd]是可以查看路径,按enter回到vim编辑模式。
这里写图片描述
[!ls]是可以查看文件名,按enter回到vim编辑模式。
这里写图片描述
列出行号
set nu:文件中每一行前面会出现行号。
跳到文件中的某一行
:#号表示一个数字,在冒号后输入一个数字,再按回车键就跳到该行。
查找字符
这里写图片描述
文本替换
如将第5-7行hello替换为hai
这里写图片描述
替换后为:
这里写图片描述
另一种全文替换
这里写图片描述
替换后为
这里写图片描述
如果是%s/hello/hai/gc将会每一行提示是否替换,输y替换,输n不替换。
普通模式
复制粘贴:
复制为[yy],粘贴为[p];
yyp:复制粘贴光标所在行;
nyyp:复制粘贴光标所在行“往下数(包括该行)”n行文字。
这里写图片描述
[3yyp]后:
这里写图片描述
删除
dd:删除该行;
ndd:删除光标所在行连续n行;
x删除光标所在字符;
这里写图片描述
替换
这里写图片描述
匹配光标所在单词
* :向下匹配
撤销
u:按[u]可以回到上一个操作,按多次u可以执行多次;
ctrl+r:撤销的恢复。
移动光标
vim可以直接在键盘上的光标来上下左右移动,但正规的vim是用小写字母h、j、k、l分贝控制光标左、右、上、下一格。
全文对齐
gg=G(gg是进入到文本开始,G是移动到文本最后)
注释
在普通模式下:先按ctrl +v 然后用光标选中要注释的行 ,再按r(替换),输入两个//,即可,如果不想注释,选中后按r,输入两个空格即可。
gcc/g++
这里写图片描述
链接:
这里写图片描述
静态库和动态库:
这里写图片描述
动态库命名方式:libc.so —->(lib是前缀,.so是后缀);
静态库命名方式:libc.a —–>(lib是前缀,.a是后缀);
gcc默认是动态库,
-static对生成的文件采用静态链接( gcc -static test.c);
-g调试信息;
-share 此选项将尽量使用动态库,生成文件比较小,但是要求系统有动态库。
-O0 、-O1 、-O2、-O3编译器的优化选项的4个级别,-O0表示没有优化,-O1为缺省值,-O3优化级别最高。
-w不生成任何警告信息;
-Wall生成所有警告信息。

猜你喜欢

转载自blog.csdn.net/sophia__yu/article/details/81660486