欢迎来到天天文库
浏览记录
ID:26503612
大小:69.50 KB
页数:11页
时间:2018-11-27
《c语言程序设计初步教材》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、C语言程序设计初步教材本章是C语言程序设计的入门部分,从整体上介绍C语言的起源和发展,讲述C语言的特点、结构和基础语法要点。1.1C语言概述1.1.1C语言的发展C语言是界上广泛流行的的程序设计语言之一,它适合于作系统描述语言,即用来写系统软件,也可以用来写应用软件。早期的操作系统等系统软件主要是用汇编语言编写的(包括UNIX操作系统在内)。但是汇编语言存在明显的缺点,即可读性和可移植性都比较差,为了提高可读性和可移植性,最好改用高级语言,但是一般高级语言难以实现汇编语言的某些功能(汇编语言可以直接对硬件进行操作,例如对内存地址的操作、位操作等)。人们希望能找
2、到一种既具有一般高级语言特性,又具有低级语言底层操作能力的语言,集它们的优点于一身,于是C语言在70年代初应运而生了。1978年由美国电话电报公司(AT&T)的贝尔实验室正式发表了C语言,同时由B.W.Kernighan和D.M.Ritchit合著了影响深远的“THECPROGRAMMINGLANGUAGE”一书,通常简称为《K&R》,也有人称之为《K&R》标准。但是,在《K&R》中并没有定义一个完整的标准C语言,许多开发机构推出了自己的C语言版本,这些版本之间的微小差别不时引起兼容性上的问题,后来由美国国家标准学会ANSI(AmericanNationalS
3、tandardInstitute)在各种C语言版本的基础上制定了一个C语言标准,于1983年发表。通常称之为ANSIC。1987年ANSI又公布了新标准——87ANSIC。目前广泛流行的各种C编译系统都是以它为基础的。11早期的C语言主要是用于UNIX系统,由于C语言的强大功能和各方面的优点逐渐为人们认识,到了八十年代,C语言开始进入其它操作系统,并很快在各类大、中、小和微型计算机上得到了广泛的使用,成为当代最优秀的程序设计语言之一。在C的基础上,1983年又由贝尔实验室的BjarneStrou-strup推出了C++。C++进一步扩充和完善了C语言,成为一种
4、面向对象的程序设计语言。C++提出了一些更为深入的概念,它所支持的这些面向对象的概念容易将问题空间直接地映射到程序空间,为程序员提供了一种与传统结构程序设计不同的思维方式和编程方法。因而也增加了整个语言的复杂性,掌握起来有一定难度。但是,C是C++的基础,C++语言和C语言在很多方面是兼容的。因此,掌握了C语言,再进一步学习C++就能以一种熟悉的语法来学习面向对象的语言,从而达到事半功倍的目的。目前最流行的C语言有以下几种:·MicrosoftC或称MSC·BorlandTurboC或称TurboC·AT&TC这些C语言版本不仅实现了ANSIC标准,而且在此基
5、础上各自作了一些扩充,使之更加方便、完美。这些不同版本C语言之间有一定的差别,但对初学者来说,不必过多理会他们的差别,重在理解C语言的特点和编程方法。本书的叙述以TURBOC为准。1.1.2C语言的特点C语言是一种通用、灵活、结构化、标准化、使用广泛的编程语言,能完成用户的各种任务,特别适合进行系统程序设计和对硬件进行操作的场合。C语言本身不对程序员施加过多限制,是一种专业程序员优先选择的语言。它有如下主要特点:1.C语言简洁紧凑,压缩了一切不必要的成分。ANSIC有32个关键字,TURBOC有58个关键字,9种控制语句,书写形式自由。2.C语言运算丰富,将括
6、号、赋值、强制类型转换、取变量地址等都以运算实现。ANSIC提供34种运算符,TURBOC提供了44种运算符,灵活使用这些运算符可以实现其它高级语言难以实现的操作。C语言的表达式简练、多样、灵活、实用,加上分号可以构成语句。3.C语言数据类型丰富,具有现代语言的各种数据类型,用户还能扩充它,实现各种复杂的数据结构,完成各种问题的数据描述。尤其是C语言的指针类型,非常有特色,可指向各种数据,完成数据的高效处理。C语言不但对数据作类型上的描述,还提供存储属性考虑。4.C语言是一种结构化程序设计语言,层次清晰,便于按模块化方式组织程序,易于调试和维护。C程序由若干程
7、序文件组成,一个程序文件由若干函数构成。111.C语言可以直接访问物理地址,进行位(bit)一级的操作,能实现汇编语言的大部分功能。由于C语言实现了对硬件的编程操作,因此C语言集高级语言和低级语言的功能于一体的表现能力和处理能力极强,有时也被称作中级语言。2.C语言提供了预处理机制,有利于大型程序的编写和调试。3.C语言生成的目标代码质量很高,程序执行效率很高。一般只比汇编程序生成的目标代码效率低10~20%。4.用C语言写的程序可移植性好(与汇编语言比)。基本上不作修改就可以用于各种型号的计算机和各种操作系统。5.C语言语法限制不太严格,程序员设计自由度较大
8、。例如,对数组下标越界不做检查,由程序
此文档下载收益归作者所有