zoukankan      html  css  js  c++  java
  • 使用vim在Linux下编写C语言程序

    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                               生成所有警告信息。  

  • 相关阅读:
    zookeeper常用命令
    linux查看日志相关命令
    第三十一期: VueRouter源码浅析 传统前端和多媒体前端
    第二十八期:模型,模块,组件,框架和架构
    星际2光速注卵
    星际心得
    英语词根研究和单词记忆
    星际2如何离线模式打电脑和rpg地图练操作
    星际研究
    第一篇帖子:不利用中间变量交换两个数字的小算法题
  • 原文地址:https://www.cnblogs.com/hello-2015/p/5147922.html
Copyright © 2011-2022 走看看