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

最新文章

  1. Cocos2d-x 核心概念 - Node(节点)与Node层级架构
  2. 常见Linux命令的介绍
  3. EF架构~关系表插入应该写在事务里,但不应该是分布式事务
  4. hdu 1711Number Sequence
  5. 推荐两款PC健康小软件
  6. awk实现按照某个字段排序
  7. linux下重启tomcat,日志查看
  8. spring之bean的作用域scope的值的详解
  9. Spring aop expression
  10. 【开源项目6】介绍MenuDrawer这个牛x的控件,实现左右出菜单,上下出菜单
  11. jQuery学习一:jQuery中的ready和load事件
  12. REDIS 源码
  13. ♫【Git】
  14. JavaScript基础(一)
  15. Django : Table &#39;MyDjango.django_admin_log&#39; doesn&#39;t exist
  16. windows server2012 图形加速,玩游戏不掉帧
  17. mint-ui之picker爬坑记
  18. win7下配置mysql的my.ini文件
  19. Chapter 4 Invitations——19
  20. leetcode — word-ladder

热门文章

  1. android:ems的作用
  2. sql一对多的两个表的update
  3. soapUI 时间格式
  4. Asp.Net MVC4入门指南(6):验证编辑方法和编辑视图
  5. jQuery将悬停效果加到菜单项
  6. 十分钟使用github pages +hexo拥有个人博客
  7. 如何让aspnet服务加载静态资源html(我的动态网页静态化) 转
  8. SpringMVC 结合HttpClient调用第三方接口实现
  9. Java使用Scanner接收中文并输出时出现乱码
  10. jquery基础事件