VIM编辑器与GCC编译器讲解

合集下载

Linux中gcc编译器和vim编辑器

Linux中gcc编译器和vim编辑器

Linux中gcc编译器和vim编辑器》gcc编译器gcc识别的⽂件扩展名如下:.c C语⾔⽂件.i 预处理后的C语⾔⽂件.C、.cc、.cp、.cpp、.c++、.cxx C++语⾔⽂件.ii 预处理后的C++语⾔⽂件.S 汇编⽂件.s 预处理后的汇编⽂件.o 编译后的⽬标⽂件.a ⽬标⽂件的静态链接库(链接时使⽤).so ⽬标⽂件的动态链接库(链接、运⾏时使⽤)gcc、g++编译选项-o file 指定⽣成的输出⽂件名为file-E 只进⾏预处理-S 只进⾏预处理和编译-c 只进⾏预处理、编译和汇编-Wall ⽣成所有级别的警告信息-w 关闭所有警告(建议不使⽤此选项)gcc hello.c -o hello其中 -o 表⽰指定⽣成的可执⾏⽂件的⽂件名运⾏命令 ./⽂件名例如: ./hellogcc常⽤编译应⽤实例:例1:分步进⾏gcc -E hello.c -o hello.i 1、预处理gcc -S hello.i -o hello.s 2、编译gcc -c hello.s -o hello.o 3、汇编gcc hello.o -o hello_elf 4、链接例2:⼀步到位gcc hello.c -o hello_elf》vim编辑器更新 sudo apt-get update安装 sudo apt-get install vim使⽤vim编辑器打开或新建⼀个⽂件,并将光标置于第⼀⾏⾏⾸vi(或者vim) + ⽂件名使⽤vim编辑器打开或新建⼀个⽂件,并将光标置于第n⾏⾏⾸vi(或者vim) +n ⽂件名退出编辑器:按ESC按键,输⼊ :wq 等价于 :x(不使⽤上下左右,退格)vim编辑器的三种模式1、编辑模式插⼊模式切换到编辑模式:按ESC按键按 h(左) j(下) k(上) l(右)移动光标按x :删除光标所在的字符按[n]x :删除光标后n个字符按[n]X :删除光标前n个字符按dd :删除光标所在的⾏按u :恢复按yy :复制光标所在的⾏按[n]yy :复制从当前⾏开始的n⾏按cc :剪切光标所在的⾏按p :把粘贴板上的内容插⼊到当前⾏按. :执⾏上⼀次操作按shift + zz(按住shift再按两下z键):保存并退出当前⽂件2、插⼊模式编辑模式切换到插⼊模式:i (光标前插⼊)a (在光标后插⼊)3、底⾏模式【命令模式】(在编辑模式下,按 shift + : 是进⼊该模式):set nu 显⽰⾏号:set nu! 取消显⽰⾏号:w 保存当前⽂件:w file 另存当前⽂件为file:wq 保存当前⽂件,退出:q! 不保存⽂件并退出。

vi(vim)编辑器以及使用gcc使用

vi(vim)编辑器以及使用gcc使用
注:在运行动态库时需要配置环境变量LD_LIBRARY_PATH才能找到共享库(系统库不需要,已经加载)
export LD_LIBRARY_PATH=库的路径
export LD_LIBRARY_PATH=.
练习:在cal函数中添加除法功能,并封装成动态库,在main.c调用测试
-----------------------------
:set nu //显示行号
:set nonu //不显示行号
-------------------------------
gcc编译器
从.c原程序到最后的可执行的二进制文件
1链接
-E:只做预处理
gcc -E xx.c -o xx.i
-c:只编译不链接,生成.o目标文件
vi(vim)编辑器
vi helloworld.c
打开vi编辑器,默认进入命令模式
命令模式:按"i"切换到插入模式,按":"进入底行命令模式
dd:删除光标所在行
ndd:删除n行
u:恢复上一次操作
ctrl+r:撤销
yy:复制光标所在行
nyy:复制n行
unix/linux内存管理机制
unix/linux采用虚拟内存地址机制。每个进程先天都有4G虚拟内存地址,本质就是整数编号,与物理内存无关。
虚拟地址不可以直接存储数据,否则段错误。
虚拟内存地址必须映射到物理内存才可以存储数据。
程序员所接触的都是虚拟内存地址,虚拟内存地址分为用户地址空间和内核地址空间。用户空间0-3G,内核空间3-4G。
2 使用
2.1 写调用的测试程序main.c

Linux中vim,gcc命令的使用

Linux中vim,gcc命令的使用

Vim编辑器的基本模式在Shell命令提示符下输入:[root@localhost~]# vim hello.c //如果hello.c文件不存在,将创建,如果存在,将打开进入如下图1所示的vim编辑器,此时为命令行模式,在此模式下输入命令a(光标后面插入)或命令i(光标前插入),进入图2所示的插入模式(在编辑器下方出现“插入”字符),既可以输入内容。

一、gcc test.c当不用任何选项编译一个程序时,如果编译成功,GCC将会生成名为“a.out”的可执行文件。

如果要执行该可执行文件(相当于windows中的.exe文件)时,需输入如下命令:./a.out二、gcc -o test test.c使用-o编译选项,来为将产生的可执行文件指定一个文件名来代替a.out文件。

如,上例中用test文件代替“a.out”文件。

如果要执行该可执行文件(相当于windows中的.exe 文件)时,需输入如下命令:./test{这种方式适合单个源文件的情况!}gcc -c test.c“-c”编译选项,只编译成目标文件,不进行汇编和链接,这时将会生成一个扩展名为“.o”的中间目标文件(这个文件类似于Visual C++中的“.obj”文件),全部目标文件生成再统一链接成二进制文件。

{这个选项适合有多个源文件的情况!}如下:gcc -c main.c //编译gcc -c mytool1.c //编译gcc -c mytool2.c //编译gcc -o main main.o mytool1.o mytool2.o //链接*+* 当需要进行gdb调试时,需要在编译时加上“-g”选项,链接时不能加“-g”选项,此时上例的命令,将做如下更改:gcc -c -g main.cgcc -c -g mytool1.cgcc –c –g mytool2.cgcc –o main main.o mytool1.o mytool2.o其实: int main(int argc,char *argv[]) 是 UNIX 和 Linux 中的标准写法,而 int main() 只是 UNIX 及Linux 默许的用法.那究竟 argc,argv[] 有何之用呢?下面看个例子 edit.c 就会明白它们的用法了:#include<unistd.h>#include<stdio.h>int main(int argc,char *argv[]){if(argc==1 || argc>2)printf("请输入想要编辑的文件名如:./edit fillen");if(argc==2)printf("编辑 %sn",argv[1]);0exit(0)}编译该程序:gcc -o edit edit.c①运行:./edit结果:请输入想要编辑的文件名如:./edit fille②运行:./edit edit.txt结果:编辑 edit.txt看到这里 argc,argv[] 如何用就很明白了,argc 是外部命令参数的个数,argv[] 存放各参数的内容,如上例:执行 ./edit 时,argc 为1,argv[0] 为 ./edit .而执行 ./edit edit.txt 时,argc 的值为 2,argv[0] 为 ./edit,argv[1] 为 edit.txt .另:Linux下的C应用程序同样是从main函数开始执行,但多了返回值和参数。

linuxvimgccgdb开发cc程序环境搭建

linuxvimgccgdb开发cc程序环境搭建

linux+vim+gcc+gdb开发C/C++程序环境搭建我用的是ubuntu操作系统。

打开终端1.sudo apt-get install vim(vim-full 这个软件自9.10版本被废弃了,不论怎么添加软件源都找不到的,所以直接安装vim就可以了,,也可以安装gvim,,在新立得软件里面搜索vim 就可以找到了)2.sudo apt-get install build-essential // build-essential是c语言的开发包,包含了gcc make gdb和libc函数库很多工具。

或者sudo apt-get install gcc + sudo apt-get install gdb网上有很多版本说要编译安装,这个可能挺复杂的,而且花的时间也不少(没试过阿),,不想在命令行中安装的化,可以下载rpm包直接点击安装,3.gcc只是一个编译器,vim是编辑器(也可以用gedit编辑源代码),gdb是调试器,,可以新建一个test.c的helloworld文件测试以下4.一般c程序就用gcc编译,c++程序就用g++编译[介绍]-----------------------------------------常见用法:GCC 选项GCC 有超过100个的编译选项可用。

这些选项中的许多你可能永远都不会用到,但一些主要的选项将会频繁用到。

很多的GCC 选项包括一个以上的字符。

因此你必须为每个选项指定各自的连字符,并且就象大多数Linux 命令一样你不能在一个单独的连字符后跟一组选项。

例如,下面的两个命令是不同的:gcc -p -g test.cgcc -pg test.c第一条命令告诉GCC 编译test.c 时为prof 命令建立剖析(profile)信息并且把调试信息加入到可执行的文件里。

第二条命令只告诉GCC 为gprof 命令建立剖析信息。

当你不用任何选项编译一个程序时,GCC 将会建立(假定编译成功)一个名为 a.out 的可执行文件。

gcc makefile文件的编写

gcc makefile文件的编写

常用的vim命令 命令 常用的
光标命令:(可视模式下) 光标命令:(可视模式下) :(可视模式下 k、j、h、l—上下左右光标移动命令。 上下左右光标移动命令。 、 、 、 上下左右光标移动命令 nG—调转命令,n为行数,该命令使光标立即跳到指定的行数。 调转命令, 为行数 该命令使光标立即跳到指定的行数。 为行数, 调转命令 Ctrl+G—光标所在位置的行数和列数。 光标所在位置的行数和列数。 光标所在位置的行数和列数 编辑命令: 可视模式下) 编辑命令: (可视模式下) i—从可视命令模式进入文本编辑模式。 从可视命令模式进入文本编辑模式。 从可视命令模式进入文本编辑模式 esc键—放回到可视命令模式。 放回到可视命令模式。 键 放回到可视命令模式 查找命令: 可视模式下) 查找命令: (可视模式下) /string 、? 、?String—从光标所在的行向前向后查找相应的字符 从光标所在的行向前向后查找相应的字符 串。 拷贝复制命令: 可视模式下) 拷贝复制命令: (可视模式下) yy—拷贝一行到剪切板 拷贝一行到剪切板 p—粘贴剪切板的内容 粘贴剪切板的内容 在冒号命令方式下: ,表示从当前光标处开始复制n行内容到 在冒号命令方式下:yn,表示从当前光标处开始复制 行内容到 剪切板。将光标移到相应的位置, 即可粘贴剪切板的内容。 剪切板。将光标移到相应的位置,按p即可粘贴剪切板的(可视模式下) 编辑命令(可视模式下)
dd—删除整行命令 删除整行命令 u—恢复前一次的删除动作 恢复前一次的删除动作
冒号命令方式命令 :q—退出命令 退出命令 :w—存档 存档 :wq—存档退出 存档退出 放弃任何改动, :q!--放弃任何改动,强行退出 ! 放弃任何改动
GUNMakeFile、Makefile和makefile 、 和

gcc 编译c程序

gcc 编译c程序

GCC(GNU Compiler Collection)是一种常用的C语言编译器,用于将C源代码转换为可执行文件。

使用GCC编译C程序需要经过以下步骤:
1.编写C源代码文件,使用文本编辑器(如vi、nano等)编写C代码,并将
其保存为以.c为扩展名的文件。

2.打开终端或命令提示符,进入保存C源代码文件的目录。

3.运行GCC编译器,使用以下命令编译C源代码文件:
其中,文件名.c是C源代码文件的名称,可执行文件名是生成的可执行文件的名称。

4. 等待编译完成。

如果编译过程中没有错误,GCC将生成一个可执行文件。

5. 运行可执行文件。

在终端或命令提示符中输入可执行文件的名称,按Enter键即可运行程序。

需要注意的是,GCC编译器的使用方法可能因操作系统和平台而有所不同。

此外,如果C程序中使用了第三方库,则需要确保这些库已经被正确安装,并在编译时链接到这些库。

在Windows下配置VIM,实现GCC G 编译和调试

在Windows下配置VIM,实现GCC G  编译和调试

在Windows下配置VIM,实现GCC G++编译和调试是在windows里面实现用gcc/g++编译调试c/cpp文件:1,首先下载安装MinGW,下载地址在/projects/mingw/。

这个是边下载边安装的,下载完成即安装完成。

我的安装目录是G:\MinGW。

2,设置环境变量。

右击我的电脑,点属性-&gt;高级-&gt;环境变量。

然后:1、在PATH里加入G:\MinGW\bin,记得,如果里面还有其他的变量,记得要加个分号啊,分号得在英文输入模式下输入的。

2、新建LIBRARY_PATH变量,如果有的话,在值中加入G:\MinGW\lib,这是标准库的位置。

3、新建C_INCLUDEDE_PATH变量,值设为G:\MinGW\include。

4、新建CPLUS_INCLUDE_PATH变量,值为G:\MinGW\include;G:\MinGW\include\c++\4.5.0;G:\MinGW \include\c++\4.5.0\backward;G:\MinGW\include\c++\4.5.0\ mingw32具体路径请根据你的MinGW选择。

3,在你的_vimrc文件中配置编译调试选项。

我的个人配置“定义CompileRun函数,用来调用进行编译和运行func CompileRun()exec “w”“C程序if &amp;filetype == ‘c’exec “!gcc -Wall -enable-auto-import % -g -o %&lt;.exe”“c++程序elseif &amp;filetype == ‘cpp’exec “!g++ -Wall -enable-auto-import % -g -o %&lt;.exe”“Java程序elseif &amp;filetype == ‘java’exec “!javac %”endifendfunc“结束定义CompileRun“定义Run函数func Run()if &amp;filetype == ‘c’ || &amp;filetype == ‘cpp’exec “!%&lt;.exe”elseif &amp;filetype == ‘java’exec “!java %&lt;”endfunc“定义Debug函数,用来调试程序func Debug()exec “w”“C程序if &amp;filetype == ‘c’exec “!gcc % -g -o %&lt;.exe”exec “!gdb %&lt;.exe”elseif &amp;filetype == ‘cpp’exec “!g++ % -g -o %&lt;.exe”exec “!gdb %&lt;.exe”“Java程序elseif &amp;filetype == ‘java’exec “!javac %”exec “!jdb %&lt;”endifendfunc“结束定义Debug“设置程序的运行和调试的快捷键F5和Ctrl-F5 map &lt;F5&gt; :call CompileRun()&lt;CR&gt; map &lt;F6&gt; :call Run()&lt;CR&gt;map &lt;C-F5&gt; :call Debug()&lt;CR&gt;4,完成上面几步基本上就大功告成啦,尽情享受vim编程吧。

打造Windows环境下的GCC%2BVIM的程序编写编译新模式

打造Windows环境下的GCC%2BVIM的程序编写编译新模式

官方网址: / 或 (以VIM 6.1 for Win32 GUI(NT/2K/XP)为例。)
实战一下
以一个经典得不能再经典的例子Hello World!来说明如何用vim和gcc来生成win32程序。(gcc的 命令和linux下是一样的。)
gcc和vim都有支持不同平台的版本,win32也当然不例外。此外,配合不同的库像WINAPI、GTK+等可开发出GUI程序。
ห้องสมุดไป่ตู้装GCC
gcc的官方主页()上好像有for win32的版本,但MinGW、CYGWin、Dev-C++、DJGPP等都集成了GCC win32版,以下以MinGW(Minimalist GNU For Windows)为例:到Sourceforge(/project/showfiles.php?group_id=2435)下载一个MinGW-2.0.0-3.exe,然后安装,它包括了
打造Windows环境下的GCC+VIM的程序编写编译新模式
2003年05月24日16:23:10 赛迪网 red army
用vim编写源代码,用gcc编译连结程序几乎已成为LINUX下程序设计的标准开发模式了,(当然emacs也是非常出色和流行的),本文教你如何在Windows下做到同样的事情。
GCC-3.2-core-20020817-1
binutils-2.13-20020903-1
mingw-runtime-2.2
w32api-2.0
gdb-5.1.1-1
make-3.79.1-20010722 (binary renamed as mingw32-make)
『发表评论』『写信给编辑』『 推荐好友 』『关闭窗口』

Linux 命令行下的软件开发工具介绍

Linux 命令行下的软件开发工具介绍

Linux 命令行下的软件开发工具介绍在软件开发中,命令行下的工具一直都是程序员们的利器。

不管你使用的是哪个操作系统,Linux 系统下的命令行工具都是最为强大的。

本文将介绍一些 Linux 命令行下的软件开发工具。

一、文本编辑器在命令行中,最需要的工具之一就是文本编辑器。

下面介绍两款常用的 Linux 命令行文本编辑器:1. VimVim 是常用的文本编辑器之一,也是 Linux 系统默认安装的编辑器之一。

Vim 有三种模式:命令模式、插入模式和可视模式。

命令模式用于移动光标和执行命令,插入模式用于插入文本,可视模式用于选择和操作文本。

对于初学者来说,最好先学会 Vim 的基本命令,包括移动光标、删除、复制和粘贴等操作。

2. EmacsEmacs 另一款流行的文本编辑器,也是 Linux 系统安装的一款默认编辑器。

Emacs 有两种模式:编辑模式和命令模式,编辑模式类似于 Vim 的插入模式。

Emacs 的操作命令较为灵活,可以自定义绑定快捷键。

二、调试器调试器是开发人员在调试程序时的好帮手。

常用的 Linux 命令行调试器包括:1. GDBGDB 是 GNU 调试器,可以用于调试 C、C++ 和其他编程语言的程序。

GDB 可以在命令行中启动,用于监视和调试程序。

除了基本的调试功能,GDB 还有一些高级功能,如断点设置、变量和内存查看等。

2. ValgrindValgrind 是用于检测程序错误的工具包。

它包括一系列工具,如 Memcheck、Cachegrind、Massif 等。

Memcheck 用于检测内存泄漏和越界访问等内存错误,Cachegrind 用于检测程序的计算开销和缓存访问,Massif 用于检测程序的内存占用。

三、版本控制工具版本控制工具用于管理代码版本和协作开发。

常用的 Linux 命令行版本控制工具包括:1. GitGit 是目前最流行的版本控制工具之一。

Git 采用分布式架构,可以在本地和远程管理代码版本。

2.gcc编译器(ppt)

2.gcc编译器(ppt)

Gcc Gcc编译器编译器主讲人主讲人::李奎什么是什么是gcc gccGcc Gcc是一种编译工具是一种编译工具是一种编译工具。

它能够将高级语言它能够将高级语言((如c 语言)编写的文件编译生成操作系统可以执行的二进制工具Gcc Gcc工具的编译过程工具的编译过程•Gcc Gcc把源文件把源文件把源文件((.c .c文件文件文件))生成操作系统可执行的文件要经历四个过程要经历四个过程。

这个四个过程是预处理这个四个过程是预处理、、编译编译、、汇编汇编、、链接链接。

它们是按顺序执行的它们是按顺序执行的。

如下如所示如下如所示::预处理链接编译汇编源文件.C 可执行文件预处理器编译器汇编器连接器预处理阶段预处理器是在真正的翻译源文件开始之前由是在真正的翻译源文件开始之前由gcc gcc gcc编译编译器调用的独立程序器调用的独立程序。

预处理器可以删除注释预处理器可以删除注释、、包含其他文件以及进行宏替换其他文件以及进行宏替换。

编译阶段编译阶段的主要工作是把我们的源代码生成相应的汇编代码的过程汇编代码的过程。

这个阶段花费的时间会比较长这个阶段花费的时间会比较长。

它需要对我们的它需要对我们的C C 语言进行语法和语义的分析语言进行语法和语义的分析,,还需要优化我们的代码要优化我们的代码,,最终生成汇编代码最终生成汇编代码。

汇编阶段首先我们应该知道汇编代码首先我们应该知道汇编代码((汇编指令汇编指令))并不是机器能够执行的语言器能够执行的语言。

我们还必须把汇编语言翻译成计算机能识别的机器语言计算机能识别的机器语言,,这个翻译的过程是在汇编阶段完成的编阶段完成的。

链接阶段链接阶段是通过链接器完成的链接阶段是通过链接器完成的。

链接器是一个独立的程序的程序,,它将一个或者多个由编译器或汇编器生成的目标文件外加库链接为一个可执行的文件的目标文件外加库链接为一个可执行的文件。

•一般来说一般来说,,系统安装后就已经安装和设定好了系统安装后就已经安装和设定好了gcc gcc gcc。

vi编辑器知识

vi编辑器知识

Vi编辑器Linux程序设计基础—C环境一:vi编辑器linux命令及编辑器Vi(1)命令模式不管用户处于何种模式,只要按一下Esc,即可使vi进入命令行模式;在Shell环境下(提示符为$)下输入启动Vi命令,进入编辑器时,是处于该模式下。

(2)插入模式在命令模式下输入命令i,附加命令o,修改命令c,取代命令r或替换命令s都可以进入文本输入模式。

该模式下,用户输入的任何字符都被vi当作文件内容保存起来,并显示在屏幕上。

要进入命令模式,按Esc。

(3)末行模式在命令模式下,输入“/”,”?”,”:”,为末行命令模式,在该模式下可储存或离开编辑器,也可设置编辑环境,如寻找字符串,列出行号等。

Vi是功能强大的编辑器,列举常用的命令。

一.vi基本用法下面以Vi编辑一个shell程序hello.sh为例。

1.在提示符下启动vi,编辑hello.sh脚本:vi hello.sh接着进入vi命令模式的主界面,最下面一行为状态提示信息,可看到当前正在处理名为hello.sh的新文件2.按A键进入插入模式,注意界面最下面一行的提示信息变成“插入”,并显示当前光标的所在位置为第1行第1列:就可以编辑需要的shell脚本。

编辑好shell脚本后,发现vi自动将一些关键字或者具有一些类型信息的字符串涂上不同颜色,方便进行shell编程。

•no=10•hello=“Hello everybody!”•echo $no•echo $hello3.保存shell。

先按esc,从插入模式退回到命令模式,最下面一行的状态信息也由原来的INSERT变成ALL .4.按“:”进入末行模式,按w键:5.按enter将刚才写的shell脚本保存到硬盘的当前目录下,提示信息表示有多少行和多少字符写入hello.sh文件。

6.在进入末行模式输入q按enter,退出vi环境:7.回到系统提示符。

8.用ls查看当前目录,发现hello.sh脚本文件。

有关vi编辑器及GCC编译器的使用

有关vi编辑器及GCC编译器的使用

vi编辑器及GCC编译器的使用一、掌握文本编辑器vi的使用方法二、了解GNU gcc编译器三、掌握使用GCC编译C语言程序的方法一、vi的三种工作模式:1、命令模式:执行相关文本编辑命令2、输入模式:输入文本3、末行模式:实现查找、替换、保存、多文件操作等等功能二、进入vi,直接在Shell提示符下键入vi [文件名称],如果该文件在当前目录不存在,则vi创建之。

三、退出vi1、在命令模式下输入“:wq”,保存文件并退出vi2、若不需要保存文件,输入“:q”3、若文件已修改,但不保存,输入“:q!”强制退出vi4、其它一些不常用的方法在此省略。

四、命令模式下的常用编辑命令1、启动vi后,进入的是vi的命令模式2、按i键,进入输入模式,可以进行文本的编辑,在输入模式下,按esc 键,可切换回命令模式i:光标位置不变,可在光标左侧插入正文a:光标位置向后退一格,可在光标左侧插入正文o:在光标所在行的下一行增添新行O:在光标所在行的上一行增添新行I:光标跳到当前行的开头A:光标跳到当前行的末尾3、光标的移动k、j、h、l分别等同于上、下、左、右箭头键Ctrl+b,向上翻一页Ctrl+f,向下翻一页nH,将光标移到屏幕的第n行nL,将光标移到屏幕的倒数第n行4、删除文本nX,删除光标所指向的前n个字符D,删除光标右侧的所有字符(包括光标所指向的字符)db,删除光标左侧的全部字符ndd,删除当前行和当前行以后的n行内容5、粘贴和复制p,将缓冲区的内容粘贴到当前字符的右侧P,将缓冲区的内容粘贴到当前字符的左侧yy,复制当前行到内存缓冲区nyy,复制n行内容到内存缓冲区6、搜索字符串/str1,正向搜索字符串str1n,继续搜索?str2,反向搜索字符串str27、撤销和重复u,撤销前一条命令的执行结果.,重复最后一条命令五、末行模式下的命令:n,将光标移动到第n行:nw file,将第n行写入file文件:n,mw file,将第n行至第m行写入file文件:w,将编辑的内容写入原始文件:wq,将编辑的内容写入原始文件并退出编辑程序:w file,将编辑的内容写入file文件,保持原有文件的内容不变:f file,将当前文件重命名为file:e file,编辑新文件file代替原有内容:f,打印当前文件的状态,如文件的行数,光标所在的行号等:!<命令>,执行相应shell命令六、三种工作模式的切换1、在Linux shell下,键入vi或vi <文件名>进入命令模式2、在命令模式下,键入:进入末行模式3、在命令模式下,键入文本编辑命令如i,a,o等进入文本输入模式4、在文本输入模式下,按esc键进入命令模式5、在末行模式下,按backspace键或del键进入命令模式6、在末行模式下,键入q或wq,退出vi,饭后到Linux shell下GCC编译器的使用一、使用vi或其它文本编辑器,输入C语言程序,并保存为test.c二、在Linux shell下,输入命令gcc –o test test.c三、编译正确后,输入命令./test运行程序,观察程序运行结果四、若编译错误,根据提示信息,进入程序查错,再回到第二步,直至程序语法无误。

实验二、Vi文本编辑器和GCC编译器的使用

实验二、Vi文本编辑器和GCC编译器的使用

实验二、Vi文本编辑器和GCC编译器的使用实验二、Vi文本编辑器和GCC编译器的使用一、实验目的:1、掌握Linux系统终端方式使用的编辑器vi;2、学习vi的启动、存盘、文本输入、现有文件的打开、光标移动、复制/剪贴、查找/替换等命令。

3、掌握GCC编译器的使用。

二、实验内容:1、用Vi文本编辑器对你的计算机进行网络配置。

网络配置文件有:文件1:/etc/sysconfig/network;文件2:/etc/sysconfig/network-scripts/ifcfg-eth0;文件3:/etc/resolv.conf;要求:在图形界面下配置,看相应配置文件有没有被修改;修改配置文件看图形界面是否被修改。

2、将显示器配置文件(自己查),复制到//home目录下(一定要复制,对副本进行操作,否则出现异常后果自负),并重命名为i.打开i文件,设置行标,将第89行至第96行的内容复制到第116行,并将第62行至第86行的Option替换为type.并将整篇文章中的Section 替换成choose.将修改后的文件另存为j.并将j复制到/usr目录下,并重命名为k.3、在vi中编写一个abc.c程序,对程序进行编译、连接、运行。

具体如下: [student@enjoy abc]$ vi abc.cmain(){int i,sum=0;for(i=0;i<=100;i++){sum=sum+i;}printf("\n1+2+3+...+99+100=%d\n",sum);}[student@enjoy abc]$ gcc -o abc abc.c[student@enjoy abc]$ lsabc abc.c[student@enjoy abc]$ ./abc1+2+3+...+99+100=5050[student@enjoy abc]$[student@enjoy abc]$4、从如上内容的基础上总结vi的启动、存盘、文本输入、现有文件的打开、光标移动、复制/剪贴、查找/替换等命令。

Linux5 vi编辑器的使用与GCC

Linux5 vi编辑器的使用与GCC

CS&T Information Course
5.2 Vi的使用方法
vi初步
• 存盘,退出
– 在命令行状态下,键入ZZ,即可保存文件并退出vi – 在命令行状态下,键入 :,出现 “ : 提示符”,输入:
• w [文件名] 保存文件,但不退出vi
• wq [文件名] 保存文件,并退出vi • q 退出vi • q! 不保存所做修改,退出v
CS&T Information Course
5.4 Vi的高级用法
vi的高级用法
• 编辑另一个文件
– 命令格式: 在命令模式下,键入 :e file – 作用:放弃编辑当前文件,转而编辑文件file – 通常应把当前文件存盘,但可使用:e! 不保存当前文件而直接 编辑文件file
• 文本搜索
– 在命令模式下,键入 :,出现 :提示符后,键入 /或?用 来在文件中向前或向后搜索如: /Unix , ?linux – 搜索完毕后,在命令模式下键入n,会依次移动到下一个找到 的文本上
2007
CS&T Information Course
第五章 Vi编辑器的使用与GCC
• • • • • 5.1Vi概述 5.2Vi的使用方法 5.3Vi进阶 5.4Vi的高级使用方法 5.5 GCC的使用
CS&T Information Course
5.5 GCC的使用
gcc的基本用法
gcc [选项] [文件名列表]
常用选项: • -o 输出文件名 – 如:gcc -o ex1.o ex1.c – 或:gcc ex2.c -o ex2.o • -c – 只激活预处理,编译,和汇编,也就是只把程序做成obj文件,不连接 成为可执行文件。 如: gcc -c hello.c

操作系统VI和GCC用法

操作系统VI和GCC用法
Operating System Concepts 2.4
2.使用c d命令相对切换目录路径 2.使用c d命令相对切换目录路径 使用 根据当前所处的位置和想去的地方,可以通过几 根据当前所处的位置和想去的地方, 种不同的方法相对地切换目录路径。 种不同的方法相对地切换目录路径。如果只是想移动 到目录结构的上一级去,可以输入“cd..”命令 命令。 到目录结构的上一级去,可以输入“cd.. 命令。举 例来说,这个命令可以把你从目录/var/spool带到目 例来说,这个命令可以把你从目录/var/spool带到目 var中去 更进一步地说,输入“ ../..”命令 中去。 录/var中去。更进一步地说,输入“cd ../.. 命令 将把你从目录/var/spool带到根目录 带到根目录“ 中去。 将把你从目录/var/spool带到根目录“/”中去。因 为在根目录上没有更高一级的目录结构了, 为在根目录上没有更高一级的目录结构了,所以在目 /spool中输入 cd../../..”命令还是把你从 中输入“ 录/var /spool中输入“cd../../.. 命令还是把你从 目录/ /spool带到根目录而已 带到根目录而已。 ..” 目录/var /spool带到根目录而已。“..”是一个指 向自身的目录索引。 向自身的目录索引。
Operating System Concepts 2.5
三、vi文本编辑器程序
i编辑器是一个小巧但功能强大的程序 编辑器是一个小巧但功能强大的程序。 v i编辑器是一个小巧但功能强大的程序。许多人 在最初的时候认为它很难用, 在最初的时候认为它很难用,因为它的编辑命令都是 用一两个字母来表示的;但是只要你习惯了使用vi 用一两个字母来表示的;但是只要你习惯了使用vi 使用它进行编辑工作也会十分迅速。 ,使用它进行编辑工作也会十分迅速。其原因在于这 个编辑器只是一个非常短小的程序, 个编辑器只是一个非常短小的程序,因此它只需要使 用很少的内存;同时其编辑命令很简短, 用很少的内存;同时其编辑命令很简短,又都可以通 过键盘快速输入, 过键盘快速输入,所以基本上用不着在键盘和鼠标之 间来回切换。 间来回切换。

LINUX系统工具vim和gcc

LINUX系统工具vim和gcc

LINUX系统工具Vim的使用1、三种模式相互转换1、解压缩包gz格式:(管理员下)tar xvzf vim_[文件名].orig.tar.gzBz2格式:(管理员下)tar xvjf vim_[文件名].orig.tar.gz 用make 测试(管理员下)make test2、vi命令i、o、a 插入(append、insert、open):q 退出:help version 当前版本:set nocp 恢复默认的程序:help 在线帮助信息hjkl 左移、下移、上移、右移Ctrl+D 将光标向下移动半个窗口Ctrl+U 将光标向上移动半个窗口! 强制执行help [命令] 显示相关的命令帮助3.3—1、命令行模式如果不是合法命令,就会发出报警声。

:n(next) 进入下一个文件:rew 进入首文件:args 当前缓冲区所存的文件的文件名3.4—2.分割窗口:split 上下分割(可加文件名):vsplit 左右分割(可加文件名):ctrl+w 光标到下一个窗口:close :quit 关闭窗口3.4—3用户命令模式Vimdiff [文件名] [文件名] ……左右分割vi -r [文件名] 断电恢复3.4—4.定义新命令:ab 字符一字符串一:imap [快捷键] [需要替换的字符串]3.4.5.文本整体移动默认为8,用set进行设置[n,n] >> 右[n,n] << 左:n m k n,原目的行;m,(move)移动;k,第k行下方:[n,n] m k [n,n],原目的行;m,(move)移动;k,第k行下方3.5高级使用Vi环境(m):set 功能选项(输入全拼)首先使用.bash_profile文件,每个文件可以有自己的.exrc配置文件。

export TERM=xterm-color3.5.4行号和围确定光标。

指明行号。

末行模式下。

让系统在指定的行中进行搜索字符串所在行,使用命令操作。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

:set nu

:set number
同样,如果想取消显示行号,则在末行模式中输入 :set nonu 或 :set nonumber
linux操作系统
华软软件学院电子系
P9
VIM编辑器
►光标移动操作
在vi操作中,不建议使用上下左右四个箭头移动光标,而是: h 左移 j 下移 k 上移 l 右移 这几个字符跟数字键组合,可以移动多个位置,比如 3j 光标下移3行 5h 光标左移3格
linux操作系统
华软软件学院电子系
P14
VIM编辑器
删除多个字符 dd:删除光标所在当前行
D或d$:删除从光标所在处开始到行尾的内容
d^:删除从光标前一个字符开始到行首的内容 dw:删除一个单词 dG:删除光标所在行到末尾所有内容 :n1,n2d 删除n1到n2行
linux操作系统
H 移至屏幕上端
gg 到第一行 nG 到第n行 : n 到第n行
linux操作系统
L 移至屏幕下端
G 到最后一行
M 移至屏幕中央
华软软件学院电子系
P10
VIM编辑器
移动光标还有如下几个常用命令 ^或数字0:光标移动到行首 $:光标移动到行尾 w:光标跳转到下一个字首,按标点或单词分割 W:光标跳转到下一个字首,长跳,比如end-of-line是一个字 e:光标跳转到下一个字尾 E:光标跳转到下一个字尾,长跳
linux操作系统
华软软件学院电子系
P7
VIM编辑器
►vi编辑器启动
使用vi进行编辑第一步是进入编辑界面,一般方法为: $ vi filename
请尝试创建新文件并编辑一段简单的C程序
linux操作系统
华软软件学院电子系
P8
VIM编辑器
►显示vi中的行号
当编辑的文件较大时,人工确认行号不方便 需通过vi的命令确认行号,在末行模式中输入
华软软件学院电子系
P15
VIM编辑器
复制和剪切命令 yy、Y 复制当前行 nyy、nY 复制当前行以下n行 dd 剪切当前行 ndd 剪切当前行以下n行
p、P粘贴在光标所在行下或行上 替换和重复命令
r 取代光标所在处字符
R 从光标所在处开始替换字符,直到按ESC结束
. 重复上一次命令操作
►文本修改命令
o:在光标的下面新开一行,并定位到该行的行首,等待输入
O:在光标的上面插入一行,并定位到该行的行首,等待输入
linux操作系统 华软软件学院电子系
P13
VIM编辑器
►文本修改命令——删除
删除单个字符
x:删除光标处的字符
nx:删除光标所在位置开始向右的n个字符(n是具体的数字 ) X:删除光标前面的那个字符 nX:删除光标前面向左的n个字符(n是具体的数字)
教学内容
►Vim编辑器 ►Gcc编译器与gdb调试器 ►Makefile的编写
linux操作系统
华软软件学院电子系
P1
教学要求
►掌握vim编辑器的常用命令,能够熟练使用 vim编辑器编写C语言程序 ►掌握gcc编译器及gdb调试器的使用,能够 编写简单的makefile文件 ►重点:vim的常用命令、makefile的编写
b:光标跳转到上一个字,按标点或单词分割
B:光标跳转到上一个字,长跳
linux操作系统 华软软件学院电子系
P11
VIM编辑器
►屏幕命令
屏幕命令是以屏幕为单位去移动光标,常用于文件的滚屏和分页 Ctrl+U:将屏幕向前(文件头方向)翻滚半屏 Ctrl+D:将屏幕向后(文件尾方向)翻滚半屏 Ctrl+F:将屏幕向后(文件尾方向)翻滚一屏
linux操作系统 华软软件学院电子系
P16
VIM编辑器
搜索和替换 /string 搜索指定字符串string :set ic 搜索时忽略大小写;:set noic区分大小写 n 下一个搜索到的位置;N上一个搜索到的位置 :%s/old/new/g 全文替换,将old替换为new,g不需确认
linux操作系统
华软软件学院电子系
P6
VIM编辑器
末行模式
在命令行模式下,用户按“:”键可进入末行模式 此时vi会在现实窗口的最后一行显示一个“:”作为提示符,等 待输入命令 大部分管理命令就是在这里输入的 末行命令执行完后,vi自动回到命令模式 三种模式切换方法如图:
i、a、o、r ESC 文本输入模式 ESC 末行模式 命令行模式 :
linux操作系统
华软软件学院电子系
P2
第二节
Vim编辑器
linux操作系统
华软软件学院电子系
3
P3
VIM编辑器
Linux下有很多编辑器,最典型的是gedit和vim
gedit是界面操作,跟Windows上的编辑器差不多 vi则是命令交互的编辑器
►vi简介
Linux系统的第一个全屏幕编辑器
不是一个排版程序,只是一个文本编辑程序
并且输入的命令并不在屏幕上显示出来
linux操作系统
华软软件学院电子系
P5
VIM以进入文本输入模式
插入命令i、I 附加命令a、A
打开命令o、O
修改命令c(cw、cc、c$) 取代命令r、R
此时用户输入的任何字符都被vi当做文本内容保存起来
Ctrl+B:将屏幕向前(文件头方向)翻滚一屏
linux操作系统
华软软件学院电子系
P12
VIM编辑器
►文本插入命令
i:插入文本从光标所在位置前开始 I:将光标移动到当前行的行首,然后在其前插入文本
►文本附加命令
a:在光标当前位置之后追加新文本
A:将光标移动到所在行的行尾,从那里开始插入新文本
:n1,n2s/old/new/c 指定行替换,c需要确认
linux操作系统
华软软件学院电子系
P17
VIM编辑器
►文本修改命令——取消
取消上一个命令,也称复原命令
可以取消前一次的误操作或不合适的操作对文件的影响
没有菜单、只有相当丰富的命令 Vi有三种工作模式:命令行模式、文本输入模式、末行模式
linux操作系统
华软软件学院电子系
P4
VIM编辑器
命令行模式 任何时候,只要按一下ESC键,即可进入vi命令行模式 在shell环境下输入启动vi命令,进入编辑器时,也是该模式
注意:此时输入的字符都被当做编辑命令来解释
相关文档
最新文档