1.1 认识C语言
C语言是计算机专业的必修课之一,大学课程通常将C语言作为编程入门的首选语言,先学习C语言,再学习C++、Java等其他编程语言。C语言是计算机二级考试的主要科目,许多高校将能否通过计算机二级考试作为衡量学生能否毕业的标准之一,由此可以看出C语言的重要性。
1.1.1 C语言是什么
1970年,UNIX的开发者Dennis Ritchie(丹尼斯·里奇,图1.1左)和Ken Thompson(肯·汤普逊,图1.1右)开发了BCPL语言(简称B语言),而C语言是在B语言的基础上发展和完善起来的。
C语言是一种面向过程的语言,同时具有高级语言和汇编语言的优点。对大多数程序员来说,C语言是学习编程语言的首选语言,因为C语言可以让你了解底层开发,清楚系统与程序之间的“恩恩怨怨”。
图1.1 丹尼斯·里奇和肯·汤普逊
C语言使用简单、容易上手,通过几天的学习就能掌握其基础知识,因此一直倍受初学者的青睐,是许多程序员入门的首选编程语言。
1.1.2 学会了C语言能做什么
C语言是最早的编程语言之一,它可以做到一次编写,处处编译,而且每个平台都有强大的编译器和集成开发环境支持,如Windows平台的Visual Studio、IOS平台的XCode。
C语言应用广泛,单片机领域、Linux平台、嵌入式系统、游戏开发等都涉及C语言的应用。
首先看C语言在单片机领域的应用。图1.2是一个简单的单片机系统,单片机开发使用的编程语言主要有两种,一种是汇编语言、另一种是C语言。汇编语言比C语言更容易控制单片机,但是C语言的可移植性比汇编语言好,就算不太了解硬件的内部结构,编译器也能为这个硬件系统合理地分配内存空间,设计出简单的单片机程序。在将C语言应用于单片机领域时,只需做好代码优化。用C语言开发单片机系统可以提高工作效率,所以目前C语言是单片机系统开发的主流语言之一。
图1.2 单片机系统
C语言也广泛应用于Linux平台。Linux操作系统是使用C语言开发的,所以C语言在Linux平台上有广泛的应用。
C语言还可以应用于嵌入式系统。嵌入式系统涉及生活的方方面面,如汽车、家电、工业机器等。如图1.3所示,智能家居控制系统、五彩斑斓的霓虹灯及航拍飞行器系统等,都能用C语言实现。毫不夸张地说,学好C语言能“控制整个世界”。
图1.3 嵌入式系统
C语言还涉足游戏领域。如图1.4所示,无论是简单的游戏(如五子棋),还是复杂的大型游戏(如Quake),都是可以用C语言编写的。
图1.4 游戏领域
综上所述,C语言的应用领域十分广泛,涉及我们生活的方方面面。