首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

linux(五)之vi编译

前面介绍了linux的常用命令和对文本的操作,接下来我将对大家领略一下vi编译器的强大功能。 希望大家觉得写的还不错的话可以点个“推荐”哦!...一、vim/vi编译器简介 Vim/Vi是一个功能强大的全屏幕文本编译器(Full Screen Text Editor),是Linux平台上最常用的文本编译器 用于建立、编辑、显示文本文件(linux...三、vim/vi编译器的简单使用 3.1、vi启动 输入vi命令后,便进入全屏幕编辑环境,此时的状态为命令模式。...四、Vi编译器常用的命令  3.1、在文件中移动光标 h:向左移动一个字符 l:向右移动一个字符 k:向上移动一行 j:向下移动一行 ^(即Shift+6):移动到当前行的开头处...在两行内替换所有的字符串old为新的字符串new::#,#s/old/new/g 在文件内替换所有的字符串old为新的字符串new::%s/old/new/g 进行全文替换时询问用户确认每个替换需添加c选项

3K80

Linux笔记】Linux编译C语言程序

在上一篇笔记中有分享Linux下的vi/vim编辑器的使用方法(【Linux笔记】Vi/Vim编辑器),现在我们就可以使用vi/vim编辑器编写C代码了。那么写完代码该怎么进行编译呢?...关于在Windows命令行下编译C程序的方法可查看往期笔记:【C语言笔记】windows命令行下编译C程序、【C语言笔记】使用notepad++、MinGW来开发C程序。...首先,使用命令gcc -v查看当前的Linux发行版是否有安装gcc编译器(PS:本文使用的Linux发行版是红帽6): ? 使用vi/vim编辑器写代码并保存为hello.c: ?...在Linux下进行C语言编程的学习可能会增加学习的成本,但是从长远来看仍然是有必要的。...若不想安装Linux系统,也想适应一下Linux环境,则可参考往期笔记:【C语言笔记】Windows下体验Linux环境。

12.4K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Linux(Ubuntu)下编写编译C语言

    大家都知道在Windows中运行C语言很简单,打开一个IDE(VS或者codeblocks)编写代码,点击一个按钮就能运行了。...在Linux中,大家不怎么习惯用IDE,更多的开发者选择手动编辑、编译、连接、运行。 下面介绍如何进行在Linux(Ubuntu)下运行C语言。...①打开Ubuntu,在一个空文件夹内建立一个新的空文件,并改名为.c的文件 如图test.c ? ? ②打开文件编辑C语言代码并保存 ? ③返回到当前文件夹,打开终端 ?...④接下来需要在终端编译,连接 编译代码: gcc test.c -o test 格式: gcc [C文件名] -o [C文件名无后缀] ? 此时会在当前文件夹内出现一个编译后的文件 ?...附1:非图形界面Linux全终端运行C程序:http://blog.csdn.net/qq_36328643/article/details/52794876 附2:利用Vim编辑器编写C程序:http

    9.4K20

    C语言编译过程

    如果用一张图来表示: image.png 编译编译程序读取源程序(字符流),对之进行词法和语法的分析,将高级语言指令转换为功能等效的汇编代码,再由汇编程序转换为机器语言,并且按照操作系统对可执行文件格式的要求链接生成可执行程序...C源程序头文件-->预编译处理(cpp)-->编译程序本身-->优化程序-->汇编程序-->链接程序-->可执行文件 1.编译预处理 读取c源程序,对其中的伪指令(以#开头的指令)和特殊符号进行处理 [...例如在源程序中出现的LINE标识将被解释为当前行号(十进制数),FILE则被解释为当前被编译C源程序的名称。预编译程序对于在源程序中出现的这些串将用合适的值进行替换。...如数字、字符串、变量的定义,以及C语言的关键字,如main,if,else,for,while,{,},+,-,*,\,等等。...4.汇编过程 汇编过程实际上指把汇编语言代码翻译成目标机器指令的过程。对于被翻译系统处理的每一个C语言源程序,都将最终经过这一处理而得到相应的目标文件。

    1.9K20

    叙述 C语言编译

    @(C语言)[code] 用一段简单的代码,探讨下从C代码到最终可执行文件的编译过程,追根究底。 偶尔了解下底层,也就没那么多莫名其妙了。...工作原因有时候会用python写写测试工具,感受到其快速实现应用的便利,但由于偏底层开发,主力语言依然是C。对于开发语言没有什么优劣概念,在特定的情景下哪种实现更佳就用哪种,工具合适才是最好的。...个人开发环境 ubuntu 14.04 ---- 编译的作用 相比python,lua等脚本语言解释执行方式,编译C是为了提高程序的运行效率。...把对用户友好的语言文本编译成对机器友好的特定指令直接执行,而不是执行时一条一条通过解释器解析执行,很大地提高了执行的效率。对应C主要用于底层,系统层次,追求高性能表现,亦或者,平台资源限制。...编译的过程 gcc 的编译流程分为四个步骤: 计算机系统设计基本原则:层次化和抽象。 ? 编译flow 编写一个最简单的程序 hello.c,以此为例,看看各个过程做了什么事情。

    1.7K11

    C语言编译过程

    处理条件预编译 #if, #ifdef, #if, #elif,#endif 处理“#include”预编译指令,将包含的“.h”文件插入对应位置。这可是递归进行的,文件内可能包含其他“.h”文件。...保留#pragma编译器指令。(1)设定编译器状态,(2)指示编译器完成一些特定的动作。...代表接下来的文本应该被当做包含一个隐式的extern "C编译 1.高级语言->汇编代码 命令 gcc -S a.i -o a.s .file "a.c" .globl _...链接 使用到了C标准库的东西“printf”,但是编译过程只是把源文件翻译成二进制而已,这个二进制还不能直接执行,这个时候就需要做一个动作,将翻译成的二进制与需要用到库绑定在一块。...-fPIC file1.c -c //这一步生成file1.o gcc -shared file1.o -o libtest.so

    1.9K20

    linux vi命令 退出不保存,linux vi保存退出命令(如何退出vi

    Vi放弃所作修改而直接退到shell下,则Vi在显示窗口的状态行给出提示信息: File exists (use ! to override) 此时, 在末行模式下,。...在末行模式下,若在用此命令退出Vi时,返回到shell;若当前编辑的文件没被修改过,输入命令 :wq Vi将先保存文件,输入命令 :w Vi保存当前编辑文件,输入命令 :x 该命令的功能同命令模式下的ZZ...命令功能相同,连按两次大写字母Z,编辑文件没有被保存,然后Vi并不退出, 在命令模式中,则Vi保存该文件后退出。...newfile 否则可选择另外的文件名来保存当前文件,若当前编辑的文件曾被修改过,但并不退出,若用户就是不想保存被修改后的文件而要强行退出Vi时, 在末行模式下,则Vi直接退出, 返回到shell,若newfile...是一个已存在的文件,然后退出Vi返回到shell, 在末行模式下,则Vi在显示窗口的最末行显示如下信息: No write since last change (use !

    27.1K20

    C语言笔记】C语言编译的过程

    下面以windows环境下的test.c为例,test.c里的代码为: #include int main(void) { printf("This is a test program...2、预处理(Preprpcessing) 使用预处理器把源文件test.c经过预处理生成test.i文件,预处理用于将所有的#include头文件以及宏定义替换成其真正的内容。...预处理的命令为: gcc -E test.c -o test.i 上述命令中-E是让编译器在预处理之后就退出,不进行后续编译过程;-o是指定输出文件名。 预处理之后得到的仍然是文本文件。...3、编译(Compilation) 使用编译器将预处理文件test.i编译成汇编文件test.s。...汇编过程的命令为: gcc -c test.s -o test.o 上述命令中-c、-o让汇编器把汇编文件test.s转换成目标文件test.o。

    12.2K31

    C语言系列】C语言编译流程分析

    前几天看了《程序员的自我修养——链接、装载与库》中的第二章“编译和链接”,主要根据其中的内容简单总结一下C程序编译的过程吧。...\n”); return 0; } 通常我们使用gcc来生成可执行程序,命令为:gcc hello.c,默认生成可执行文件a.out 其实编译(包括链接)的命令:gcc hello.c 可分解为如下4...$gcc –S hello.i –o hello.s 或者 $ /usr/lib/gcc/i486-linux-gnu/4.4/cc1 hello.c 注:现在版本的GCC把预处理和编译两个步骤合成一个步骤...gcc其实是后台程序的一些包装,根据不同参数去调用其他的实际处理程序,比如:预编译编译程序cc1、汇编器as、连接器ld 可以看到编译后的汇编代码(hello.s)如下: .file "hello.c...$ gcc –c hello.c –o hello.o 或者 $ as hello.s –o hello.co 由于hello.o的内容为机器码,不能以普通文本形式的查看(vi 打开看到的是乱码)。

    10.9K51

    Linux编译C++

    创建C++编译环境 安装VIM PLUS 为什么安装VIM PLUS: 可以为我们提供良好的编译环境,高亮代码,智能提示等等~ git clone https://github.com/chxuan...此事将被报告的异常) 1)此时脚本开始运行 2)选择python3解释编译ycm文件 此时脚本文件会问你是选择python2还是python3来编译ycm文件?...LLDBLLDB(Low Level Debug)是Apple正在迁移的LLVM工具套件(包括Clang)的一部分具有REPL (Read-Eval-Print Loop,交互式解释器)、C++ 和 Python...gdb (CentOS) gdb -v 查看gdb是否安装成功 安装LLDB调试器(暂时不写) 大多数电脑还是用GDB作为调试器的,一般只有MAC使用且内置LLDB,暂时先不写这个 安装g++编译器...,int *b); VimPlus如图所示: g++ -g main.cpp func.cpp -o out 我们详细描述一下这条指令的执行过程 g++ main.cpp 相当于g++ -c

    22.8K50

    c语言编译器在线-c在线编译器(c语言在线编程)

    c编译器-c语言编译器是干什么用的   本人不才,仅就个人意见谈谈:   1。...c语言编译器哪个好?   g++,icc.   ...-c++ source file,在头部加上   #   #   然后就可以编译c语言写的了   C++编程软件   这个永远没有统一的标准。   ...DEV C++:   他使用的是目前信息学竞赛常使用的C语言编译器 (gcc),软件本身很小,编译能力应该还行(本人用他不是很多,估计还不错),而且操作也是采用窗口的,用起来也比较方便。...有一些信息学竞赛,如较正规的ACM比赛,都在Linux系统上,采用的是gcc编译器,这个时候你就必须得熟悉这个编译器了。

    6.9K50

    Linux vi的使用

    Linux vi的使用 vi模式转换 经常使用的三种基本模式:命令模式(Command Mode),输入模式(Input Mode),末行模式(Last Line Mode),其他的9种模式不做介绍,...vi文件保存和退出 :w 保存文件 :q 退出文件,若文件有改动则提示不能退出 :q!...强制退出,即不保存就退出 :wq 保存并且退出 vi常用操作 1、插入文本(i,I,a,A,o,O) 添加: 输入a后,在光标的右边插入文本 输入A,在一行的结尾处添加文本 插入:...在一行内替换所有的字符串old为新的字符串new :s/old/new/g 在文件内替换所有的字符串old为新的字符串new :%s/old/new/g 进行全文替换时询问用户确认每个替换需添加c选项...如果是默认安装,CentOS和RHEL一般在/etc/vimrc下面,Debian和Ubuntu一般在/usr/share/vim/vimrc vi的使用参考资料 http://wiki.dzsc.com

    8.7K10

    Linux——vi命令详解

    vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本编辑器,这里只是简单地介绍一下它的用法和一小部分指令。...由于对Unix及Linux系统的任何版本,vi编辑器是完全相同的,因此您可以在其他任何介绍vi的地方进一步了解它。...Vi也是Linux中最基本的文本编辑器,学会它后,您将在Linux的世界里畅行无阻。...Vi提供了三种修改命令,分别是cC和cc。它们修改文本的范围是由光标位置和光标移动命令二者限定的。下面分别介绍这三种修改命令。...Cc$命令 Cc$命令可以修改从光标当前位置开始到该行末尾或从光标当前位置开始到某行末尾范围内的内容。 当在命令C之前加上数字n时,表示可以修改指定行数的内容。

    12.7K21

    C语言编译和链接

    一、翻译环境和运行环境 在c语言的实现中,存在两个环境 翻译环境:在这个环境中源代码被转换成可执行的二进制指令 运行环境:实际执行代码 二、翻译环境 翻译由编译和链接两个过程组成 编译又可以分为预处理...、编译、汇编三个过程 一个c语言的项目一般是由多个.c文件一起构建的,多个.c文件通过如下步骤生成可执行程序: ①多个.c文件单独经过编译器,编译处理生成对应的目标文件 ②多个目标文件和链接库一起经过链接器处理生成最终的可执行程序...③链接库是指运行时库(支持程序运行的基本函数集合)或者第三方库 注意:在Windows环境下目标文件的后缀是.obj,Linux环境下的目标文件的后缀是.o 以下就是编译与链接的过程: 1、...③处理 #include 预编译指令,将包含的头文件的内容插入到该预编译指令的位置。...根据汇编指令和机器指令的对照表一一翻译,不做指令优化 4、链接 然后就是链接,链接就是把一堆文件链接在一起生成可执行程序,它的过程主要包括:地址和空间的分配、符号决议、重定位等 重定位:当我们使用多个.c文件生成一个可执行程序的时候

    7910

    c语言编译

    c语言编译器是一款涵盖丰富学习资料的软件,用户可以在线一键学习辅导c语言编译器在线,可以满足用户的学习需求,能够为用户带来优质的服务,随时都可以在软件上学习各种有趣编程知识。   ...软件特色   1、资源丰富   用户可以在软件上找到丰富的C语言教程,能够看到很多不同的编程资源,轻松地去学习;   2、不断更新   软件上的素材资源会不断地更新,可以让用户轻松地学习,能够在线学习到很多实用知识...;   3、满足需求   软件可以满足用户的学习需求,通过软件就可以直接去软件中学习,能学到自己没学过的;   4、功能完善   用户可以在线编译自己需要的编译的代码,支持编译多种不同的编程语言,让学习更方便...软件优势   - 编译迅速,软件的编译速度非常迅速,能够直接将编译完成的代码放在眼前,轻松查看;   - 智能联想c语言编译器在线,拥有联想功能,可以帮助用户快速地输入常用语句,不输完整也会有完整词;...  - 没有广告,使用软件的时候不会出现广告,能够轻松地使用,在软件上自由地编译学习。

    2.1K10
    领券