第1章 程序设计和C语言(六)
1.5 运行C程序的步骤与方法
用 C 语言编写的程序是源程序。计算机不能直接识别和执行用高级语言写的指令,必须用编译程序(也称编译器)把 C 源程序翻译成二进制形式的目标程序,然后再将该目标程序与系统的函数库以及其他目标程序连接起来,形成可执行的目标程序。
在编写好一个 C 源程序后,怎样上机进行编译和运行呢?一般经过以下几个步骤:
1. 上机输入和编辑源程序。
通过键盘向计算机输入程序,如发现有错误,要及时改正。最后将此源程序以文件形式存放在自己指定的文件夹内(如果不特别指定,一般存放在用户当前目录下),文件以 .c 作为后缀,生成源程序文件。
2. 对源程序进行编译。
- 预编译: 用 C 编译系统提供的 “预处理器” (又称为 “预处理程序” 或 “预编译器”)对程序中的预处理指令进行预编译处理。例如,对于 #include <stdio.h> 指令来说,就是将 stdio.h 头文件的内容读进来,取代 #include <stdio.h> 行。 由预处理得到的信息与程序其他部分一起组成一个完整的、可以用来正式编译的源程序,然后由编译系统对该源程序进行编译。
- 正式编译: 对源程序进行检查,判定它有无语法方面的错误。如有,则发出 “出错信息”,告诉编译人员认真检查改正。修改程序后重新进行编译,如果还有错,再发出“出错信息”。如此反复进行,直到没有语法错误为止。这时,编译程序自动把源程序转换为二进制形式的目标程序(后缀为 .obj)。
3. 进行连接处理。
经过编译所得到的二进制目标文件(后缀为 .obj)还不能提供计算机直接执行。必须把所有的编译后得到的目标文件连接装配起来,再与库函数相连接成一个整体,生成一个可供计算机执行的目标程序,称为可执行程序(后缀为 .exe)。连接的工作是由一个称为 “连接编辑程序” 的软件来实现的。
4. 运行可执行程序,得到运行结果
注意事项:
- 如果在编译过程中发现错误,应当重新检查源程序,找出问题,修改源程序,并重新编译,直到无错为止。
- 有时编译过程未发现错误,能生成可执行程序,但是运行的结果不正确。一般情况下,这不是语法方面的错误,而可能是程序逻辑方面的错误,例如计算公式不正确、赋值不正确等,应当返回检查源程序,并改正错误。