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

Linux & 标准C语言学习 <DAY2>的更多相关文章

  1. Unix和Linux下C语言学习指南

    转自:http://www.linuxdiyf.com/viewarticle.php?id=174074 Unix和Linux下C语言学习指南 引言 尽管 C 语言问世已近 30 年,但它的魅力仍未 ...

  2. linux 下C语言学习路线

    UNIX/Linux下C语言的学习路线.一.工具篇“公欲善其事,必先利其器”.编程是一门实践性很强的工作,在你以后的学习或工作中,你将常常会与以下工具打交道, 下面列出学习C语言编程常常用到的软件和工 ...

  3. UNIX/Linux下C语言的学习路线

    一.工具篇 “公欲善其事,必先利其器”.编程是一门实践性很强的工作,在你以后的学习或工作中,你将常常会与以下工具打交道, 下面列出学习C语言编程常常用到的软件和工具. 1.操作系统    在UNIX或 ...

  4. C语言学习008:标准错误

    在上一节中的数据文件中(C语言学习007:重定向标准输入和输出),如果文件中的数据包含非法数据,如何让程序显示一条错误的提示消息呢?就需要用到标准错误 #include <stdio.h> ...

  5. Linux下C语言编程基础学习记录

    VIM的基本使用  LINUX下C语言编程 用gcc命令编译运行C语言文件 预处理阶段:将*.c文件转化为*.i预处理过的C程序. 编译阶段:将*.i文件编译为汇编代码*.s文件. 汇编阶段:将*.s ...

  6. 实验四 Linux系统C语言开发环境学习

    项目 内容 这个作业属于哪个课程 Linux系统与应用 这个作业的要求在哪里 作业要求链接 学号-姓名 17041428-朱槐健 作业学习目标 1.Linux系统下C语言开发环境搭建 2.学习Linu ...

  7. 【C语言学习】《C Primer Plus》第1章 概览

    学习总结 1.C语言于1972年由贝尔实验室的Dennis Ritchie在与Ken Thompson一起设计UNIX操作系统的时候开发的.的的设计构想来源于Ken Thompson的B语言.Anyw ...

  8. LINUX下C语言编程基础

    实验二 Linux下C语言编程基础 一.实验目的 1. 熟悉Linux系统下的开发环境 2. 熟悉vi的基本操作 3. 熟悉gcc编译器的基本原理 4. 熟练使用gcc编译器的常用选项 5 .熟练使用 ...

  9. 郝斌老师C语言学习笔记(一)

    在给变量分配内存时,很可能这段内存存在以前其他程序使用留下的值.当使用VC编译器,若编译器发现没有给变量赋值而使用,就会返回一个以“85”开头的很大的数字(此时该段内存中为一个垃圾数,为了避免出现较常 ...

  10. 【转】朱兆祺教你如何攻破C语言学习、笔试与机试的难点(连载)

    原文网址:http://bbs.elecfans.com/jishu_354666_1_1.html 再过1个月又是一年应届毕业生应聘的高峰期了,为了方便应届毕业生应聘,笔者将大学四年C语言知识及去年 ...

随机推荐

  1. 大唐电信AC集中管理平台弱口令漏洞

    网络资产搜索: 找到平台 进行默认口令登入:admin/1***** 登陆 End!!!

  2. 解决java.sql.SQLException: null, message from server: "Host 'XXX' is not allowed to connect异常

    Sqoop连接MySQL报异常.这个异常是数据库只允许localhost或127.0.0.1访问,不允许远程访问.我用的本机IP都不行. 解决办法:修改访问权限即可. 打开cmd,进入mysql fl ...

  3. 08 学生课程分数的Spark SQL分析

    读学生课程分数文件chapter4-data01.txt,创建DataFrame. 用DataFrame的操作或SQL语句完成以下数据分析要求,并和用RDD操作的实现进行对比: 每个分数+5分. 总共 ...

  4. Windows 10 ~ Docker 安装

    Windows安装Docker 不推荐在Windows系统安装Docker,会有一些奇怪的坑不容易解决,建议windows环境安装虚拟机,通过虚拟机中的Linux系统安装Docker 官方安装文档 9 ...

  5. P77 3.12

    #P77 3.12 #一年365天,初始水平值为1.0,每工作一天水平增加N, #不工作时水平不下降,一周连续工作4天,请编写程序运算 #结果并填写表格 n = 1.0 for j in range ...

  6. 2月28日Android开发学习

    界面显示与逻辑处理 Android Studio利用XML标记描绘应用界面,使用java代码书写程序逻辑. 把App界面设计与代码逻辑分开的好处 使用XML文件描述App界面,可以很方便地在Adroi ...

  7. Linux_GItlab

    Gitlab实战 Gitlab安装 Gitlab简单使用 配置Jenkins 向 Gitlab 拉取代码 配置gitlab 触发器 Gitlab安装 环境需求: 一台干净的新机器(防止端口冲突) 配置 ...

  8. 转型.netCore开发 记录日常问题

    1.页面问题 asp-for date字段页面显示时间为"yyyy-MM-dd"类型通过@{}来处理,定义常量,将处理后的值赋值给常量,再通过@常量正常赋值例:@{ var beg ...

  9. 深入理解Java内存(图解)

    这篇文章是转自http://blog.csdn.net/shimiso/article/details/8595564博文. 本文分析基于jdk1.8 进入正题前首先要知道的是Java程序运行在JVM ...

  10. Python使用socks代理

    Python使用socks代理 参考:How to make python Requests work via socks proxy - Stack Overflow 使用pysocks库 - Ji ...