linux系统应用学习(二)---Vim编辑器、gcc编译过程、程序可传参数、环境变量

1.vim文本编辑器

#vim  b.txt  按“a或i”进入编辑模式  esc返回到命令模式 

:冒号进入底行命令模式 按wq保存退出。

注意:只能从命令模式进入其他模式!

1.命令模式 :打开文本时候的一开始的模式,也叫全局模式

yy复制光标所在的一行数据

P: 粘贴到光标所在行的下一行

nyy:复制n行

dd:剪切光标所在的一行数据

ndd:剪切n行

u:撤销

Shift +zz:快捷退出 命令模式下

/  :查找字符串

G :光标移动到文件尾(大写)

gg :光标移动到文件头

2.编辑模式:编辑文本时的模式 按a或i进入

3.底行模式:按:冒号。

set nu:设置行号 nonu 取消行号

:%s/源字符串/目标字符串/g    //字符串替换

:wq 保存退出

二、gcc编译过程

回顾源代码编译过程

  1. 准备源文件
  2. 预处理:删除注释,进行宏替换,引入头文件(声明函数)
  3. 汇编:把c语言翻译成汇编语言,进行条件编译
  4. 编译:把汇编代码编译成二进制文件(不可执行),也叫目标文件。
  5. 链接:把使用到的库函数拷贝到二进制文件当中

预处理:gcc  -E 源代码(xxx.c) -o 预处理文件(xxx.i)

汇编: gcc  -S  预处理文件  -o  汇编文件(xxx.s)

编译: gcc  -c  汇编文件  -o   目标文件(xxx.o)

链接: gcc       目标文件  -o    可执行的文件

一步到位:gcc  源文件  -o  可执行文件   (如果不用-o,默认生成a.out文件)

只编译不连接 :  gcc  -c  源文件  -o  目标文件

执行程序:  ./ 执行当前目录下的可执行文件

三、程序可传参数

运行程序的时候可以给这个程序传递一个参数,则需要在主函数里设置形参,通用写法:

int main (int argc ,char *argv[])  //可以从命令行中接收参数

argc :记录命令行传递参数的个数,包括程序本身也算一个。

argv :记录命令行所有参数。(均存为此数组中的元素)

(ps:主函数可传参数里还可加上 char **environ ,这个参数就指向环境变量表里的第一个参数,其实环境变量表是一个数组的数组,记录的环境变量及其值其实是一个字符串)  [为什么环境变量数组不会越界,因为环境变量数组的最后一个元素是0]

四、环境变量

环境变量 记录当前用户运行环境的参数的集合

环境变量表:记录了大部分环境变量

#env  //查看环境变量表

#echo  $环境变量  //查看环境变量的值(echo是干嘛的?)

#export 环境变量=$环境变量: ./   可以在环境变量后面加路径 (临时设置)

export  PATH=./:$PATH  (注意等号前后不能加空格)

在~/.bashrc 文件末尾加上上面命令可永久生效

Source  ~/.bashrc  //重启

猜你喜欢

转载自blog.csdn.net/qq_38639426/article/details/89044673