gcc是GNU C Compiler的缩写,是Linux下一款功能强大的编译器。它支持多种硬件平台,并且编译出的可执行代码执行效率较高。下面我们就一起学习如何使用它。
首先,简单介绍一下程序的编译与链接原理。c语言是一种高级语言,它的编译过程分为预编译和编译两个过程。预编译过程主要是对源程序中的伪代码(以#开头的指令)和符号进行处理的过程。经过预编译处理后,将生成一个没有宏定义/没有条件编译指令/没有特殊符号,只有常量/变量的定义以及C语言的关键字等信息的新源程序。编译的过程是将预编译之后的源程序转换成汇编程序,再将汇编程序转换成二进制目标代码的过程。经过编译得到的二进制代码虽然是机器语言代码,但还不能直接执行,还需要链接函数库之后才能成为可执行程序。
图1 编译过程
对编译链接原理有了简单的了解之后,我们学习一下如何编写一些简单的程序。