第2章 在Linux中编写C语言代码
Linux C编程从入门到精通
Linux作为一个操作系统,一项重要的功能就是要支持用户编程。传统的UNIX下的程序开发语言是C语言,C语言是一种平台适应性强、易于移植的语言。Linux是用C语言写成的。反过来,Linux又为C语言提供了很好的支持,C语言编译工具gcc、调试工具gdb属于最早开发出来的一批自由软件。因此Linux与C语言形成了完美的结合,为用户提供了一个强大的编程环境,本章将介绍在Linux中编写C语言程序的流程和具体方法。
2.1 Linux中C语言程序开发流程和工具介绍
Linux C编程从入门到精通
2.1.1 C语言程序开发流程
在Linux中开发一个C语言应用程序的流程如图2.1所示,其中每个环节的详细说明如下。
图2.1 Linux中的C语言程序开发流程
需求分析,算法设计。先根据应用代码要实现的功能进行需求分析,并且根据需求设计出相应的算法。
程序代码编辑。在文本编辑器中输入C程序源代码并保存。
编译。把源程序编译成目标程序,并且检查其中的语法错误,如果其中有语法错误,则需要返回修改程序代码,然后再次编译。
功能逻辑调试。语法没有错误并不代表程序代码就没有错误,此时的代码并不一定能实现预先设定的功能,必须进行相应的功能逻辑测试,以确定达到了预定的目标,此时可能会借助一些调试工具或者调试手段。如果没能达到预期的目标则需要返回程序代码编辑阶段修改代码。
链接并生成可执行文件。在确定代码编写已经没有问题之后,需要通过链接生成对应的可执行文件。
2.1.2 C语言的开发工具
Linux为软件开发者提供了强大的C语言开发环境和丰富的开发维护工具,熟悉并掌握这些工具是进行Linux平台软件开发的必要条件。
编辑工具。Linux系统提供了许多文本编辑程序,比较常用的有vim和emacs等。此外,本书所介绍的Ubuntu等发行版,还自带了gedit等编辑器,它们都可以用来编辑C语言源程序。
编译工具。Linux带有功能强大的符合ANSI C标准的编译系统gcc,利用gcc可以编译C/C++语言源程序。
调试工具。利用Linux带的调试工具gdb,可以调试C语言程序。
维护工具。make程序可以对程序源文件进行有效的管理。
集成开发环境(IDE)。如果读者在Windows系统中做过开发,则一定不会对IDE感到陌生。在Linux下也有许多IDE可以用来开发C程序,如CodeBlocks、CodeLite、Anjuta、Eclipse等。其中CodeBlocks、CodeLite与Windows系统中的Visual Studio界面非常类似,比较容易上手。
Linux还提供了其他一些可以用于辅助设计和调试的工具,读者可以仔细研究。