概览
-
C语言特性
-
设计特性
自顶向下规划,结构化编程,以及模块化设计。
-
高效性
程序紧凑,运行速度快,能够表现汇编语言的精确控制能力。
-
可移植性
经很少改动或不经改动就可以在其他系统上运行。
-
强大的功能和灵活性
UNIX操作系统大部分用C编写,其他语言编译器和解释器都是用C编写。并且C语言已用于解决物理学和工程学问题,甚至用于制作电影特效。
-
面向编程人员
C语言允许访问硬件,并可以操作内存中的特定位。具有丰富的运算符供选择,大多数C语言都有大型库。
-
缺点
表达方面的自由会增加风险。
-
C语言发展方向
UNIX操作系统、计算机游戏、嵌入式系统、机器人工厂、电影特效、PC应用程序、计算机语言。计算机工作基本原理
现代计算机分为中央处理单元(CPU)担负着绝大部分的计算工作;随机访问存储(RAM、内存)作为一个工作区来保存程序和文件;永久存储器,一般是硬盘,即使在计算机关机时能记下程序和文件。
CPU从内存中获取一个指令并执行该指令,然后从内存中获取下一个指令并执行。CPU有自己的工作区,该工作区由若干个寄存器(rigisters)组成,每个寄存器可以保存一个数。一个寄存器保存下一条指令的内存地址,CPU使用该信息获取下一条指令。获取一条指令后,CPU在另一个寄存器中保存该指令并将第一个寄存器的值更新为下一个指令的地址-
使用C语言的七个步骤
-
定义程序目标
考虑程序需要的信息、程序需要进行的计算和操作,以及程序应该向您报告的信息。
-
设计程序
用户界面应该什么样的、程序如何组织、目标用户是谁、如何表示数据、如何处理数据。这一步骤应该用概念来考虑而不是考虑具体代码。
-
编写代码
应该为所编写的代码添加文字注释。
编译
运行程序
-
测试和调试程序
调试(Debugging)就是要发现并修改程序错误
-
维护和修改程序
在为别人或为别人创建程序时,该程序可能会有广泛应用。如果是这样您可能会发现需要对其进行更改。
一定要养成在编写代码前先进行规划的习惯
-
目标代码文件、可执行文件和库
C编程的基本策略是使用程序将源代码文件转换成可执行文件,此文件包含可以运行的机器语言代码。C分两步完成这一工作:编译和连接。
编译器将源代码转换为中间代码,连接器将此中间代码与其他代码相结合来生成可执行文件。
目标代码文件中所缺少的第一个元素是一种叫做启动代码(strat-up code)的东西,此代码相当于您的程序和操作系统之间的接口。多缺少的第二个元素是库例程(称为函数)。
连接起的作用是将这三个元素(目标代码、系统的标准启动代码、和库代码)结合在一起,并将它们存放在一个文件里,即可执行文件中。对库代码来说连接器只从库中提取您所使用的函数所需要的代码。
简而言之,目标文件和可执行文件都是由机器语言指令组成的,但目标文件只是包含您所编写的代码转换成的机器语言,而可执行文件还包含您所用的库例程以及启动代码的机器代码。