C语言王者归来
上QQ阅读APP看书,第一时间看更新

1-2 C语言的特色

程序语言一般分为高级语言和低级语言。

高级语言(如Basic、FORTRAN、COBOL及Pascal)的优点是易学易懂,容易侦错,与人类表达的语法较为相关。缺点是无法有效率地执行硬件外围的控制,同时执行效率也较差。

低级语言(如汇编语言)则是执行效率好,对硬件的控制能力强,不过较难懂,同时编写、阅读、侦错及事后维护均较困难。

每一个程序语言的发展均有其时代背景及特色,以下是早期常见的程序语言。

Basic:早期初学者必须学习的程序语言,浅显易懂,此程序语言在目前的Windows操作系统下,已演变为Visual Basic,也是信息科学专业学生必修的程序语言。

FORTRAN:工程背景学生必学的程序语言,内含许多科学运算的函数库可供工程计算,特别是数值分析时使用。

COBOL:具备商业用途的程序语言。

Pascal:结构化语言,曾经流行一段时间,早期数据结构及算法学科以此语言为模板,作为学习的依据。

汇编语言(Assembly):低级计算机语言,一般是电子信息类专业学生的必修课程,主要应用在硬件接口的输入/输出(I/O)控制,学会这个语言,对于了解CPU运作、内存地址及各种计算机外设的控制原理非常有帮助。不过,这也是较难学习的一种计算机语言。

Python:当下最热门同时应用最广的程序语言,不论是软硬件设计、网站前后端设计、系统设计等都可应用。如果读者有志于在计算器科学领域发展,这是必备的程序语言,可以参考笔者所著的以下书籍。

C语言其实介于高级语言和低级语言之间,它有类似于Pascal结构化语言的特色,因此,早期计算机科学的数据结构及算法多以C语言作为学习模板(注意:目前也有许多学校或单位使用Python语言当作数据结构及算法的程序语言)。此外,C语言也有低阶计算机语言的特色,可方便执行硬件控制,及利用指针使用内存地址存取变量数据。同时C语言也可与汇编语言执行链接,因此尽管Python语言兴起,C语言目前仍是计算机相关专业学生必须学习的程序语言。

C语言另一个很大的特色是具有高度的可移植性(portability)。可移植性是指在某一工作平台上用C语言撰写的程序,例如在UNIX系统设计的C语言程序,转至Windows操作系统时,可直接编译执行或只要修改很小的部分即可编译及执行。也可以将程序的可移植性想成硬件兼容性(compatibility),例如,某一品牌的屏幕适配卡可在任何不同主板上安装,则表示它的兼容性很好;若此屏幕适配卡只适合用某一品牌的主板,则代表它的兼容性不好。