个人工具

“Compiling C”的版本间的差异

来自Ubuntu中文

跳转至: 导航, 搜索
第2行: 第2行:
  
 
'''.a''' 静态库 (archive)<br>'''.c''' C源代码(需要编译预处理)<br>'''.h''' C源代码头文件 <br>'''.i''' C源代码(不需编译预处理)<br>'''.o''' 对象文件 <br>'''.s''' 汇编语言代码<br>'''.so''' 动态库<br>
 
'''.a''' 静态库 (archive)<br>'''.c''' C源代码(需要编译预处理)<br>'''.h''' C源代码头文件 <br>'''.i''' C源代码(不需编译预处理)<br>'''.o''' 对象文件 <br>'''.s''' 汇编语言代码<br>'''.so''' 动态库<br>
 +
 +
==单个源文件生成可执行程序 ==
 +
 +
下面是一个简单的“hello, world”程序的源代码:T
 +
    /* helloworld.c */
 +
    #include <stdio.h>
 +
    int main(int argc,char *argv[])
 +
    {
 +
          printf(“hello, world\n”);
 +
 +
          return(0);
 +
    }
 +
                                                                                                             
 +
最简单直接的编译该代码为可执行程序的方法是,将该代码保存为文件 helloworld.c,并执行以下命令:
 +
      $ gcc helloworld.c
 +
   
 +
编译器通过检查命令行中指定的文件的后缀名可识别其为 C 源代码文件。GCC 默认的动作:编译源代码文件生成对象文件(object file),链接对象文件得到可执行程序,删除对象文件。由于命令行中未指定可执行程序的文件名,编译器采用默认的 a.out。在命令行中输入程序名可使其执行并显示结果:
 +
    $ a.out
 +
    hello, world
 +
 +
选项 -o 用来指定所生成的可执行程序的文件名。下面的命令生成名为 howdy 的可执行程序:
 +
    $ gcc helloworld.c -o howdy
 +
 +
在命令行中输入程序名将使其执行,如下:
 +
    $ howdy
 +
    hello, world
  
 
== ==
 
== ==

2008年3月12日 (三) 13:56的版本

C 编程中相关文件后缀

.a 静态库 (archive)
.c C源代码(需要编译预处理)
.h C源代码头文件
.i C源代码(不需编译预处理)
.o 对象文件
.s 汇编语言代码
.so 动态库

单个源文件生成可执行程序

下面是一个简单的“hello, world”程序的源代码:T

    /* helloworld.c */
    #include <stdio.h>
    int main(int argc,char *argv[])
    {
         printf(“hello, world\n”);

         return(0);
    }
                                                                                                             

最简单直接的编译该代码为可执行程序的方法是,将该代码保存为文件 helloworld.c,并执行以下命令:

     $ gcc helloworld.c
    

编译器通过检查命令行中指定的文件的后缀名可识别其为 C 源代码文件。GCC 默认的动作:编译源代码文件生成对象文件(object file),链接对象文件得到可执行程序,删除对象文件。由于命令行中未指定可执行程序的文件名,编译器采用默认的 a.out。在命令行中输入程序名可使其执行并显示结果:

    $ a.out
    hello, world

选项 -o 用来指定所生成的可执行程序的文件名。下面的命令生成名为 howdy 的可执行程序:

    $ gcc helloworld.c -o howdy

在命令行中输入程序名将使其执行,如下:

    $ howdy
    hello, world