零基础学C语言程序设计
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.2 C语言开发

C语言是一种面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发。C语言能以简易的方式编译、处理低级存储器。

1.2.1 C语言的发展

C语言发展史如表1.1所示。

表1.1 C语言发展史

1.2.2 C语言的特点

以下是C语言的优点。

1. 语言简洁

9类控制语句和32个关键字是C语言所具有的基础特性。这使得C语言在计算机应用程序编写中具有广泛的适用性。C语言不仅可以适合被广大编程人员使用并提高其工作效率,同时还能够支持其他高级语言编程,避免了高级语言切换的烦琐。

2. 具有结构化的控制语句

C语言是一种结构化的语言,提供的控制语句也是结构化的,如for语句、if...else语句和switch语句等。这些语句可以用于实现函数的逻辑控制,方便面向过程的程序设计。

3. 丰富的数据类型

C语言不仅具有传统的字符型、整型、浮点型、数组型等数据类型,还具有其他编程语言所不具备的数据类型。其中,指针型数据的使用最为灵活。可以通过编程对各种数据类型的数据进行计算。

4. 丰富的运算符

C语言包含34个运算符,并将赋值、括号等也作为运算符,这使C语言的表达式类型和运算符类型非常丰富。

5. 可对物理地址进行直接操作

C语言允许对硬件内存地址进行直接读/写,以此可以实现汇编语言的主要功能,并可直接操作硬件。C语言不但具备高级语言所具有的良好特性,又包含了许多低级语言的优势,故在系统软件编程领域有着广泛的应用。

6. 代码具有较好的可移植性

C语言是面向过程的编程语言。用户在进行C语言编程时只要关注所被解决问题的本身,而不用花费过多的精力去了解相关硬件。针对不同的硬件环境,C语言实现相同功能时的代码基本一致。这就意味着,在一台计算机上编写的C程序无须被改动或仅被进行少量改动便可以在另一台计算机上轻松运行,从而极大地减少了程序移植的工作强度。

7. 可生成高质量、执行效率高的目标代码

因为C语言可以生成高质量、执行效率高的目标代码,所以通常被应用于对目标代码质量和执行效率要求较高的嵌入式系统程序的编写。

以下是C语言的缺点。

1. 数据的封装性弱

C语言数据的封装性弱,从而使C语言在数据的安全性上有很大缺陷,这也是C和C++的一大区别。

2. 语法不太严格

C语言对变量的类型约束不严格,尤其对数组下标越界不做检查等,这样就会影响程序的安全性。从应用的角度,C语言比其他高级语言较难被掌握。