C语言的特点

2008-02-23 05:06:06来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

C语言是中级语言
C语言通常称为中级电脑语言。中级语言并没有贬义,不意味着他功能差、难以使用、或比B A S I C、P a s c a l那样的高级语言原始,也不意味着他和汇编语言相似,会给使用者带来类似的麻烦。C语言之所以被称为中级语言,是因为他把高级语言的成分同汇编语言的功能结合起来了。表1 - 1表明了C语言在电脑语言中所处的地位。

作为中级语言,C允许对位、字节和地址这些电脑功能中的基本成分进行操作。C语言程式很容易移植。可移植性表示为某种电脑写的软件能够用到另一种机器上去。举例来说,假如为苹果机写的一个程式能够方便地改为能够在IBM PC 上运行的程式,则称为是可移植的。
任何的高级语言都支持数据类型的概念。一个数据类型定义了一个变量的取值范围和可在其上操作的一组运算。常见的数据类型是整型、字符型和实数型。虽然C语言有五种基本数据类型,但和P a s c a l或A d a相比,他却不是强类型语言。C程式允许几乎任何的类型转换。例如,字符型和整型数据能够自由地混合在大多数表达式中进行运算。这在强类型高级语言中是不允许的。
C语言的另一个重要特点是他仅有3 2个关键字,这些关键字就是构成C语言的命令。和IBM PC的B A S I C相比,后者包含的关键字达1 5 9个之多。
C语言是结构化语言

虽然从严格的学术观点上看,C语言是块结构(b l o c k - s t r u c t u r e d)语言,但是他还是常被称为结构化语言。这是因为他在结构上类似于A L G O L、P a s c a l和M o d u l a - 2(从技术上讲,块结构语言允许在过程和函数中定义过程或函数。用这种方法,全局和局部的概念能够通过“作用域”规则加以扩展,“作用域”管理变量和过程的“可见性”。因为C语言不允许在函数中定义函数,所以不能称之为通常意义上的块结构语言)。

结构化语言的显著特征是代码和数据的分离。这种语言能够把执行某个特别任务的指令和数据从程式的其余部分分离出去、隐藏起来。获得隔离的一个方法是调用使用局部(临时)变量的子程式。通过使用局部变量,我们能够写出对程式其他部分没有副作用的子程式。这使得编写共享代码段的程式变得十分简单。假如研发了一些分离很好的函数,在引用时我们仅需要知道函数做什么,不必知道他如何做。切记:过度使用全局变量(能够被全部程式访问的变量)会由于意外的副作用而在程式中引入错误。

结构化语言比非结构化语言更易于程式设计,用结构化语言编写的程式的清楚性使得他们更易于维护。这已是人们普遍接受的观点了。C语言的主要结构成分是函数C的单独子程式。

在C语言中,函数是一种构件(程式块),是完成程式功能的基本构件。函数允许一个程式的诸任务被分别定义和编码,使程式模块化。能够确信,一个好的函数不但能正确工作且不会对程式的其他部分产生副作用。

1.2.3 C语言是程式员的语言

也许您会问“任何的电脑语言不都是程式员使用的吗?”,回答是断然的“否”。我们考虑典型的非程式员的语言C O B O L和B A S I C。C O B O L的设计使程式员难以改变所编写代码的可靠性,甚至不能提高代码的编写速度。

然而C O B O L设计者的本意却是打算使非程式员能读程式(这是不大可能的事)。注意,这并不是攻击C O B O L的长处,而是想指出,他没有被设计成为程式员的理想语言。BASIC 的主要目的是允许非专业程式员在电脑上编程解决比较简单的问题。和其形成鲜明对照的是C 语言,由于程式生成、修改和现场测试自始至终均由真正的程式员进行,因而他实现了程式员的期望:很少限制、很少强求、块结构、单独的函数连同紧凑的关键字集合。用C语言编程,程式员能够获得高效机器代码,其效率几乎接近汇编语言代码。

C语言被程式员广泛使用的另一个原因是能够用他代替汇编语言。汇编语言使用的汇编指令,是能够在电脑上直接执行的二进制机器码的符号表示。汇编语言的每个操作都对应为电脑执行的单一指令。虽然汇编语言给予程式员达到最大灵活性和最高效率的潜力,但研发和调试汇编语言程式的困难是难以忍受的。非结构性使得汇编语言程式难于阅读、改进和维护。也许更重要的是,汇编语言程式不能在使用不同C P U的机器间移植。

最初,C语言被用于系统程式设计。一个“系统程式”是一大类程式的一部分,这一大类构成了电脑操作系统及实用程式。通常被称为系统程式的有:

• 操作系统。
• 翻译程式。
• 编辑程式。
• 汇编程式。
• 编译程式。
• 数据库管理程式。
随着C语言的普及,加之其可移植性和高效率,许多程式员用他设计各类程式。几乎任何的电脑上都有C语言编译程式,这使我们能够很少改变甚至不加改变地将为一种机器写的C 语言源程式在另一种机器上编译执行。可移植性节省了时间和财力。

C语言不但在速度和结构上有他的优势,而且每个C语言系统都提供了专门的函数库,程式员能够根据不同需要对其进行剪裁,以适应各种程式的设计。由于他允许(更准确地说是鼓励)分别编译,所以C语言可使程式员方便地管理大型项目,最大限度地减少重复劳动。




标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇: C#语言初级入门(1)

下一篇: C语言的程式结构

热门词条
热门标签