?
你好,这里是争做图书馆扫地僧的小白。
目标:希望通过学习技术,期待着改变世界。
目录
????????Ubuntu是一个以桌面应用为主的Linux发行版操作系统,Ubuntu 是一个基于 Linux 内核的开源操作系统,它提供了简单易用的界面和丰富的功能,广受开发者和普通用户的喜爱。
? ? ? ? 本文介绍Ubuntu系统的中的vim编辑器和gcc编译器,具体包括vim编译器的打开,vim编译器的三种模式,以及常用的一些命令,例如删除,复制,粘贴,光标的定位,保存,退出,显行号等命令。除此之外还有gcc编译器的相关介绍,包括gcc编译的使用方式,自定义执行文件名字,还有分步骤编译的编译流程,还简单介绍了解释型语言和编译型语言。
提示:以下是本篇文章正文内容,下面案例可供参考
? ? ? ? vim编辑器是一个文本编辑器,用来写代码,值得一提的是vim的前身是vi,
vi?文件名? ??将文件在vi编辑器中打开(存在直接打开,如若不存在则新建并打开)
当使用vi? 文件名打开一个文件,默认的就是在命令行模式。
命令行一般是用来复制粘贴等操作的。
从插入模式和底行模式回到命令行模式,按Esc键
插入模式是用来编辑文本的,通俗一点就是写代码的地方
进入插入模式的方式:在命令行模式下输入
????????i 在光标所在位置前面开始插入
????????I 在光标所在行的行首开始插入
????????a 在光标所在位置后面开始插入
????????A 在光标所在行的行尾开始插入
????????o 在光标所在行下面新起一行开始插入
????????O 在光标所在行上面新起一行开始插入
底行模式是一般是用来做保存退出等操作的。
进入底行模式的操作是在命令行模式下按冒号键。
命令行模式:
gg? ? ? ? ? ?将光标定位到第一行
G? ? ? ? ? ? 将光标定位到最后一行
ngg ????????将光标定位到第n行
yy? ? ? ? ? ?复制光标所在行
nyy ????????复制光标所在行向下数的n行(包含光标所在行)
p ????????????在光标所在行下面开始粘贴
P ????????????在光标所在行上面开始粘贴
dd ??????????剪切光标所在行
ndd ????????剪切从光标所在行向下数的n行(包含光标所在行)
/单词? ? ? ? 在全文件中查找单词回车之后,按n键查找下一个,按N键查找上一个
u?????????????撤销
ctrl + r? ? ?反撤销
shift zz? ? 保存退出
底行模式:
:w? ? ? ? ? ? ????????保存
:q ????????????????????退出
:q! ???????????????????不保存强制退出
:wq ??????????????????保存并退出
:noh? ? ? ? ? ????????取消查找的高亮显示
:set nu ?????????????显示行号?
:set nonu? ????????取消显示行号
:vsp 文件名 ??????左右分屏打开多个文件进行编辑 ctrl ww 切换编辑窗口
:wqa? ? ? ? ? ? ? ? ? 将所有打开的文件都保存退出
:%s/aa/bb/g? ? ? 将全文的aa都替换成bb
:%s/aa/bb/gc? ? ?将全文的aa都替换成bb,此命令会逐个询问是否替换按y是,按n否
:m,ns/aa/bb/g? ? 将第m行到第n行的aa都替换成bb
1.直接使用法:
gcc xxx.c? ? ? ? ?//xxx.c是想要编译的.c文件名
????????这种编译编译方式,会在当前路径下,默认生成一个叫做 a.out 的可执行文件
????????使用的时候在终端中./a.out 就可以执行了
2.自定义可执行文件名:
gcc xxx.c -o xxx ????????//xxx.c是想要编译的.c文件名 xxx 自定义的可执行文件名
????????这种编译编译方式,会在当前路径下,生成一个自定义名字的可执行文件
????????使用 ./自定义的名字 就可以执行了
编译流程共有四步 : 预处理-->编译-->汇编-->链接
预处理:头文件的展开,宏定义的替换以及注释的删除
????????gcc -E xxx.c -o xxx.i
编译:用来词法分析和语法分析
????????gcc -S xxx.i -o xxx.s
汇编:生成计算机能识别的二进制文件
????????gcc -c xxx.s -o xxx.o
链接:链接库文件,生成最终的可执行文件
????????gcc xxx.o -o a.out
? ? ? ?编程语言分为两大类,编译型语言和解释型语言。
编译型语言:
????????程序在运行之前,需要一个翻译的过程,将代码翻译成计算机识别的二进制语言,这个过程由编译器完成。编译型语言在执行的过程中,就无须重新编译了。
解释型语言:
????????在程序运行之前,无需事先编译,而是在执行的过程中,由解释器逐行的翻译给计算机看。
????????以上就是今天要讲的内容,本文介绍了ubuntu中的vim编辑器和gcc编译器,列举了常用的命令和语法形式,以及gcc编译的相关知识。希望喜欢的朋友们能点点关注,点个赞支持一下,谢谢。