1.进入字符界面

2.创建文件夹用于存放源文件

mkdir helloworld    //创建文件夹命令

cd helloworld        //进入新建的文件夹,这里应该说目录比较好,windows用习惯了

vim main.c        //打开vim并创建main.c文件

//按 i 键进入编辑状态,以下是程序

#include 
          int main()

{

printf("Hello world!/n");

return 0;

}

按Esc进入命令模式,按 ZZ 保存退出

gcc main.c           //编译

./a.out                   //运行,默认情况生成a.out可执行文件
 如何在GCC++中编译一个C++程序并运行 收藏 
GCC   能够编译三种语言:C、C++   和   Object   C(C   语言的一种面向对象扩展)。利用   gcc   命令可同时编译并连接   C   和   C++   源程序。  
  #DEMO#:   hello.c  
   
  如果你有两个或少数几个   C   源文件,也可以方便地利用   GCC   编译、连接并生成可执行文件。例如,假设你有两个源文件   main.c   和   factorial.c   两个源文件,现在要编译生成一个计算阶乘的程序。  
   
  -----------------------  
  清单   factorial.c  
  -----------------------  
  #include   <stdio.h>  
  #include   <stdlib.h>  
   
  int   factorial   (int   n)  
  {  
          if   (n   <=   1)  
                  return   1;  
   
          else  
                  return   factorial   (n   -   1)   *   n;  
  }  
  -----------------------  
   
  -----------------------  
  清单     main.c  
  -----------------------  
  #include   <stdio.h>  
  #include   <stdlib.h>  
   
  int   factorial   (int   n);  
   
  int   main   (int   argc,   char   **argv)  
  {  
          int   n;  
   
          if   (argc   <   2)   {  
                  printf   ("Usage:   %s   n/n",   argv   [0]);  
                  return   -1;  
          }  
          else   {  
                  n   =   atoi   (argv[1]);  
                  printf   ("Factorial   of   %d   is   %d./n",   n,   factorial   (n));  
          }  
   
          return   0;  
  }  
  -----------------------  
   
  利用如下的命令可编译生成可执行文件,并执行程序:  
  $   gcc   -o   factorial   main.c   factorial.c  
  $   ./factorial   5  
  Factorial   of   5   is   120.  
   
  GCC   可同时用来编译   C   程序和   C++   程序。一般来说,C   编译器通过源文件的后缀名来判断是   C   程序还是   C++   程序。在   Linux   中,C   源文件的后缀名为   .c,而   C++   源文件的后缀名为   .C   或   .cpp。  
   
  但是,gcc   命令只能编译   C++   源文件,而不能自动和   C++   程序使用的库连接。因此,通常使用   g++   命令来完成   C++   程序的编译和连接,该程序会自动调用   gcc   实现编译。假设我们有一个如下的   C++   源文件(hello.C):  
   
  #include   <iostream.h>  
   
  void   main   (void)  
  {  
          cout   <<   "Hello,   world!"   <<   endl;  
  }  
   
  则可以如下调用   g++   命令编译、连接并生成可执行文件:  
   
  $   g++   -o   hello   hello.C  
  $   ./hello  
  Hello,   world!  
   
  1.7.2     gcc/egcs   的主要选项  
                                  表   1-3     gcc   命令的常用选项  
  选项                                 解释  
  -ansi                               只支持   ANSI   标准的   C   语法。这一选项将禁止   GNU   C   的某些特色,  
                                          例如   asm   或   typeof   关键词。  
  -c                                     只编译并生成目标文件。  
  -DMACRO                           以字符串“1”定义   MACRO   宏。  
  -DMACRO=DEFN                 以字符串“DEFN”定义   MACRO   宏。  
  -E                                     只运行   C   预编译器。  
  -g                                     生成调试信息。GNU   调试器可利用该信息。  
  -IDIRECTORY                   指定额外的头文件搜索路径DIRECTORY。  
  -LDIRECTORY                   指定额外的函数库搜索路径DIRECTORY。  
  -lLIBRARY                       连接时搜索指定的函数库LIBRARY。  
  -m486                               针对   486   进行代码优化。  
  -o   FILE                           生成指定的输出文件。用在生成可执行文件时。  
  -O0                                   不进行优化处理。  
  -O   或   -O1                       优化生成代码。  
  -O2                                   进一步优化。  
  -O3                                   比   -O2   更进一步优化,包括   inline   函数。  
  -shared                           生成共享目标文件。通常用在建立共享库时。  
  -static                           禁止使用共享连接。  
  -UMACRO                           取消对   MACRO   宏的定义。  
  -w                                     不生成任何警告信息。  
  -Wall                               生成所有警告信息。

使用vim在Linux下编写C语言程序的更多相关文章

  1. 在Linux下运行C语言程序

    市面上常见的Linux都是发行版本,典型的Linux发行版包含了Linux内核.桌面环境和各种常用的必备工具,国内使用较多的是Ubuntu(乌班图).CentOS.Deepin(深度Linux).本教 ...

  2. Linux下运行C语言程序

    一.编写C语言的源代码 二.用gcc -c C文件名生成.o文件 三.用gcc -o 可执行文件名 .o文件名 生成可执行文件 四.输入可执行文件名前加./执行可执行文件

  3. Ubuntu下编写C语言程序

    新建C文件,新建一个文件用touch,新建文件夹用mkdir. 打开文本编辑器,编辑C文件,命令用gedit xxx.C 编写C程序,Ctrl+S保存 编译运行 1.gcc命令是编译 -o是可选项 是 ...

  4. 在VC6.0下运行C语言程序,以及编程入门必备的常识类小知识!

    今天给大家分享在VC6.0环境下编写C语言程序的基本步骤,为初学者打开学习C语言的第一道门.具体步骤如下(如果需要软件资源,可以留言): 1)新建工作区 依次点击 文件--新建--工作区 或是Ctrl ...

  5. 在 Linux 下学习 C 语言有什么好处?

    作者:宅学部落链接:https://www.zhihu.com/question/23893390/answer/832610610来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请 ...

  6. Ubuntu\Linux 下编写及调试C\C++

    一.在Ubuntu\Linux 下编写及调试C\C++需要配置基本的环境,即配置gcc编译器.安装vim编译器,具体配置安装步骤我在这里就不多说了. 二.基本环境配置完了我们就可以进入自己的程序编写了 ...

  7. Linux下的C语言编程

    一.在Linux下的C语言编程所需工具(下面所列举的都是我编程所用的工具) 1.文本编辑器 Vim 2.编译链接工具 gcc 3.调试器 gdb 4.项目管理工具 make和makefile 二.VI ...

  8. Linux 下 expect 脚本语言中交互处理常用命令

    Linux 下 expect 脚本语言中交互处理常用命令 1. #!/usr/bin/expect 告诉操作系统脚本里的代码使用那一个 shell 来执行.这里的 expect 其实和 Linux 下 ...

  9. 在Linux下开始C语言的学习

    为什么要在linux下学习C语言? linux下可以体验到最纯粹的C语言编程,可以抛出其他IDE的影响 环境配置简单,一条命令就足够.甚至对于大多数linux发行版本,都已经不需要配置C语言的环境 查 ...

随机推荐

  1. window.close(); 关闭浏览器窗口js代码的分析总结

    序号 关闭代码 需要确认 无任何作用 无需确认 测试 1 window.close() IE7 firefox,chrome,safari Opera Close 2 window.opener=nu ...

  2. Quartz.net 定时调度CronTrigger时间配置格式说明

    1.   CronTrigger时间格式配置说明 CronTrigger配置格式: 格式: [秒] [分] [小时] [日] [月] [周] [年] 序号 说明 是否必填 允许填写的值 允许的通配符 ...

  3. aspnet超级链接 传递 当前页面 textbox值

    一共有两个窗体. 第一个窗体A传参到窗体B  A的参数是A窗体的textbox 窗体A代码 <html xmlns="http://www.w3.org/1999/xhtml" ...

  4. tomcat(二)--tomcat结构

    Tomcat结构及组件介绍 上面的层次结构在server.xml中有体现 <Server> <Service> <Connector> <Engine> ...

  5. Gson实现自定义解析json格式

    客户端跟服务器交互的时候我们使用json实现 但是 在交互的时候除了传送json对象数据意外 我们还需要传输标志位等 比如我们现在的交互方式格式 对象 { "data": { &q ...

  6. SqlBulkCopy 从bcp客户端收到一个对 colid 1 无效的列长度。

    出现这个错误,大家都知道是因为字段长度超出了,但是这里需要注意的是,colid 1指的是数据库表的第1列,而不是C#中DataTable的第1列. 比如C#中DataTable的列顺序为{" ...

  7. AJAX应用优势

    国内翻译(仅音译)常为 “阿贾克斯” 和阿贾克斯足球队同音. 使用ajax 构建应用程序 这个术语源自描述从基于 Web 的应用到基于数据的应用的转换.在基于数据的应用中,用户需求的数据如联系人列表, ...

  8. CVTE实习面经

    一个月的实习都结束了,我才把这篇面经放出来...可能有记得不太清楚的地方,还请多多见谅. 第一次面试是在5月中旬. 这次面试问的主要是基础的问题吧,就是C和C++的基础问题,我记得有问到下面几个问题 ...

  9. SharePoint 2013开发入门探索(二)- 列表操作

    我们如何用代码对SharePoint列表做些例如增删改查的操作呢?如果您的程序可以部署到服务器上,就可以使用 服务器对象模型,因为服务器对象模型提供的功能最多,限制最少:否则可能要选择客户对象模型等其 ...

  10. js高阶函数

    我是一个对js还不是很精通的选手: 关于高阶函数详细的解释 一个高阶函数需要满足的条件(任选其一即可) 1:函数可以作为参数被传递 2:函数可以作为返回值输出 吧函数作为参数传递,这代表我们可以抽离一 ...