![程序设计与问题求解:C语言](https://wfqqreader-1252317822.image.myqcloud.com/cover/147/53256147/b_53256147.jpg)
1.4.2 C语言程序开发步骤
C程序的开发通常包括4个步骤:编辑、编译、连接和运行,如图1.8所示。
![](https://epubservercos.yuewen.com/4150B0/31729192104878806/epubprivate/OEBPS/Images/58639-00-018-2.jpg?sign=1739597169-Cmm7QR9U1yjGKLAPkomWLO9DgE8Od4IX-0-74000162bd61c1cc8b2ebc895b1a051e)
图1.8 C程序的编程过程
1. 编辑
程序的编辑过程就是代码的书写过程,用于实现计算机执行编程者期望的任务。理论上可以使用各种各样的文本编辑器来书写代码,例如记事本、写字板、Vim、Word、WPS等文本编辑软件,但为了更好地提高书写代码的效率,建议使用集成开发工具与环境,例如Turbo C、Dev-C++、Code::Blocks、Microsoft Visual Studio等。
下面以“Dev-C++”开发工具为例,介绍C程序编程过程。
如图1.9所示,选择“File”→“New”→“Source File”菜单项,可以新建一个源代码文件。编辑源代码后,选择“File”→“Save”菜单项或单击“Save”按钮,在随后打开的对话框中设置“文件名”,并选择“保存类型”为“C source files (*.c)”就可以完成源代码文件的创建、编辑与保存。后缀为“.c”的文件是C语言的通用后缀名称。
![](https://epubservercos.yuewen.com/4150B0/31729192104878806/epubprivate/OEBPS/Images/58639-00-019-1.jpg?sign=1739597169-5vwk6xiZPuiXpBZokwvf2TBmsgVOsSbO-0-6707c497226969b7a79ce438fa031b6a)
图1.9 编辑并保存源代码
2. 编译
由于计算机只能识别机器语言的二进制指令,因此为了使计算机进行工作,需要将设计好的程序转换为机器语言,计算机才能够按照设计人员的指令来工作,这种转换工作需要由一个被称为编译器的程序来完成。编译器将源代码文件作为输入,经过编译后生成一个磁盘文件,该文件包含了与源码文件语句所对应的二进制机器指令。编译器生成的机器语言指令被称为目标代码,而包含目标代码的磁盘文件被称为目标文件,通常使用“.obj”作为文件的扩展名。
如图1.10所示,选择“Execute”→“Compile”菜单项对源代码进行编译。
![](https://epubservercos.yuewen.com/4150B0/31729192104878806/epubprivate/OEBPS/Images/58639-00-019-2.jpg?sign=1739597169-Tx9ibZ6Bn5lX2Y81JFt3zA1dZbFRbywa-0-5e21e607a6b4d36efc4953bc363ef6ab)
图1.10 编译源代码
若编译通过,将打开“Compile Progress”对话框显示相关信息;若编译失败,也将高亮显示有警告或错误的代码行等信息。
3. 连接
由于在进行程序设计时往往需要使用编译器所提供的通用代码或程序,而这些通用代码或程序通常是存在于库文件中,因此连接的作用就是把编译后所得到的目标文件与相应的库文件中的代码连接起来,最终生成一个可以被计算机执行的完整二进制文件。这个文件也被称为可执行程序。在Windows操作系统中,可执行程序文件的扩展名为“.exe”。大多数开发环境都提供了一个选项,可以设置编译和连接是分步进行还是一步完成。
4. 运行
经过编译和连接并生成可执行文件后,便可双击程序图标进行运行操作,或者在图1.10中,选择“Execute”→“Run”菜单项运行程序,程序运行后将打开命令行界面显示运行结果,如图1.11所示。
![](https://epubservercos.yuewen.com/4150B0/31729192104878806/epubprivate/OEBPS/Images/58639-00-020-1.jpg?sign=1739597169-jvBHLmlVUuWSuKhUqf4zji7452HtZea9-0-1fa9d1590d146e7eb81ce53f153ed8ca)
图1.11 运行可执行程序
在运行程序时,应注意观察运行方式和运行结果是否与设计目标相符。如果运行结果与期望结果不一致,则应重新审查代码或者算法的正确性。初学者不仅要解决语言语法运用问题,尤其更要注意算法思维是否存在逻辑问题。