学习笔记:Linux系统命令2

vim文本编辑器:

    可以直接在终端下采用纯键盘操作的一款文本编辑器,号称编辑器之神,可以二次升级、可以扩展

    基础用法:

        1、进入vim:

            输入 vim file.c 文件存在则打开,否则新建并打开

        2、输入i:

            进入编辑模式,编写代码

        3、保存退出:

            按Esc键,输入ZZ保存并退出

   

    vim的三大模式:

        正常模式:(打开文件时的默认模式)

            一般用于阅读文件,或者用于快捷键对文本快速修改

        编辑模式:

            一般用于输入内容、编辑文件

        行底模式:

            一般用于对vim的临时配置、或者执行一些高级操作

   

    模式之间的切换:

        正常  输入i ->  插入

        插入  按Esc ->  正常

        正常  输入: ->  行底

        行底  按Esc ->  正常

   

    正常模式下的常用操作:

        光标移动:

            h左 j下 k上 l右

            gg      光标跳转到第一行

            G       光标跳转到最后一行

            n加回车  光标向下跳转n行

            n-      光标向上跳转n行

            nG      直接跳转到第n行

            vim file.c +n   从第n行进入文件

        删除操作:

            dd  删除光标所在的一行代码

            ndd 删除n行

            x    删除一个字符

            nx   删除n个字符

            dw/de 删除一个连续的字符串(是否删空格)

            d^  从当前光标删除到行首

            d$  从当前光标删除到行尾

            dgg 从当前光标删除到第一行

            dG  从当前光标删除到最后一行

        复制代码:

            yy  复制一行代码

            nyy 复制n行代码

            p   粘贴到当前光标的下一行

            P   粘贴到当前光标的上方

        移动代码:

            删除的内容还存储在粘贴板上,使用p\P可以粘贴出来,从而达到移动代码的效果

            xp  交换两个字符

        替换代码:

            r   替换光标所在的一个字符

            cw  替换一个连续字符串

            R   进入替换模式

                (insert键切换替换和插入模式)

        撤销操作:

            u   撤销上一次操作

            Ctrl+r  取消上次的撤销操作

   

    进入插入模式的方式:

        i   在当前光标前面进入插入模式

        I   光标跳转到当前行首,进入插入模式

        a   在当前光标后面进入插入模式

        A   光标跳转到当前行尾,进入插入模式

        o   在当前行的下面插入一行空白行,进入插入模式

        O   在当前行的上面插入一行空白行,进入插入模式

    插入模式下的操作:

        Ctrl+p/n  自动补全,变量名\函数名\宏

        Ctrl+i     相当于Tab键

        Ctrl+j     相当于回车键

        Ctrl+c     相当于Esc键

        vim自定义功能:

        Ctrl+z     保存并退出

        Ctrl+x     保存并编译并运行

        Ctrl+p(正常) 自动添加头文件和main函数

   

    行底模式下的操作:

        :w  写入

        :q  退出

        :q! 强制退出

        :wq 保存退出

        :x  保存退出

        :X  加密码  

            :set key=(空格) 删除密码

            注意:必须:wq 才能生效

        :!cmd   在vim中执行cmd系统命令 !ls

        :/key   查找关键字key,n下一个,N上一个

        :%s/old/new 把old关键词替换为new

        :set nu     显示行号

        :set nonu   取消行号

        :>n    n行代码向右缩进一次

        :<n    n行代码向左缩进一次

        注意:在行底模式下对vim进行配置只能是临时有效,关闭后会失效,如果想长期有效需要对vim的配置文件(~/.vimrc)进行设置

   

    如何配置vim:

        1、vim ~/.vimrc 打开配置文件

        2、写完后,回到正常模式,ZZ退出

        3、下次打开vim就生效了

   

    学习使用vim的建议:

    1、大概两周的适应时间

    2、一招鲜吃遍天

    3、教程vimtutor

C语言简介:

    BCPL->New B->C->UNIX->Minix->Linux->gcc

    C语言诞生于1971~1973年,美国贝尔实验室,肯.汤普逊和丹尼斯.里奇

    C语言是专门为了编写操作系统而诞生的语言,天生适合对硬件编程,以运行速度快而著称,而且C语言非常适合编写数据结构和算法

    因为C语言出现时间太早,所以有很多缺陷,因为没有想到普通人也可以编程,但是很多前辈总结避免这些缺陷或陷阱的经验

    《C语言三剑客》-》《C陷阱与缺陷》《C与指针》

    《C程序设计语言》

    C语言的语法非常自由,自由意味着危险,自由源于自律

    C89语法标准,旧的系统中的默认标准

    C99语法标准,对C语言的扩展和增强 -std=gnu99

    C11语法标准,全新的升级

C语言第一个程序:

    #include <stdio.h>

    程序员所编写的代码都不是标准的C代码,需要一段程序翻译成标准C代码,负责翻译的程序叫做预处理器,翻译的过程叫做预处理,被翻译的语句叫做预处理指令,以#开头的语句都是预处理指令

        #include 的功能是把一个头文件导入(拷贝)到当前位置

            #include <xxx.h>

                从系统指定的路径下查找并加载头文件

            #include "xxx.h"

                先从当前工作路径查找,如果找不到再从系统指定的路径查找并加载

    stdio.h

        头文件:以.h结尾,里面存储的是一些辅助性的代码,绝大多数都是函数的声明

        源文件:以.c结尾,里面存储的是实际的功能性的代码

        C语言标准委员会为C语言以函数形式提供的一些基础功能,这些函数都被封装在libc.so

        然后通过很多的头文件对不同功能的标准库函数进行了说明,stdio.h就是其中之一,常用:stdlib.h string.h

    int main()

        C语言中函数是管理代码的最小单位,一个函数就是一个功能的实现

        main函数是程序的入口,有且只有一个

        int 是一种数据类型,表示main函数的执行结果是一个整数值

        return 的作用:

            1、返回一个执行结果给函数的调用者

                正数    出现异常(别人导致)

                0       一切正常

                负数    出现错误(自己导致)

            2、提前结束函数

                main函数遇到return语句程序结束

        main函数是由操作系统调用,所以它的返回值给了操作系统,反应了程序是如何结束的

    {

        printf("Hello World!\n");

        return 0;

    }

    printf/scanf 是标准库的输出输入函数,一般用于调试代码

        printf("---------\n");

        xxxx

        printf("---------\n");

    转义字符:键盘上有一些不好直接表示的符号,通过一些特殊字符搭配来表示,这种字符搭配称为转移字符

        \n  换行

        \t  制表符,Tab键

        \a  铃响

        \b  光标后退一个字符

            printf("\b \b") 退格效果

        \r  光标回到行首

        %%  显示一个%

        \\  显示一个\

    注意:C语言是以分号作为一行代码的结束标志,使用大括号来划分代码

    注意:必须使用英文输入法

编译器:

    负责把人能看得懂的文本文件,翻译成计算机能看得懂的二进制文件,由预处理器、编译器、链接器组成

    gcc编译器是GNU社区为了编译Linux内核代码而开发一款免费的编译器,默认语法标准是C99或者C89

    常用的编译参数:

        -E      只显示预处理的结果

        -S      生成汇编文件

        -c      只编译不链接

        -o      指定编译结果的名字

        -I      指定头文件的加载路径 -I path

        -l      指定要使用的代码库 -lm导入数学库

        -Wall   尽可能多地产生警告信息

        -Werror 把警告当错误处理

        -std    设置编译语法标准 -std=gnu89/99

C代码如何从源文件变成可执行文件的过程:

    1、预处理:把源文件翻译成预处理文件

        gcc -E xxx.c    显示预处理结果到终端

        gcc -E xxx.c -o xxx.i 把预处理的结果存储到xxx.i预处理文件中

    2、编译: 把预处理文件翻译成汇编文件

        gcc -S xxx.i    生成以.s结尾的汇编文件

    3、汇编: 把汇编文件翻译成二进制的目标文件

        gcc -c xxx.s    生成以.o结尾的目标文件

    4、链接: 把若干个目标文件合并成一个可执行文件

        gcc a.o b.o c.o ... 生成a.out可执行文件

C语言中的文件类型:

    .c  源文件

    .h  头文件

    .h.gch  头文件的编译结果文件,会被优先使用

    .i  预处理文件

    .s  汇编文件

    .o  目标文件

    .so 共享库文件

    .a  静态库文件

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值