C语言学习笔记01——C语言概述

1972年,贝尔实验室的丹尼斯·里奇(Dennis Ritch)和肯·汤普逊(Ken Thompson)在开发UNIX操作系统时设计了C语言

C语言是在B语言(汤普逊发明)的基础上进行的设计。

2 C语言的特点 2.1 优点

设计特性:能轻松的完成自定向下的规划、结构化编程和模块化设计;C语言编写的程序更易懂、更可靠。

高效性:运行速度快,更接近汇编语言的高效特性和微调的能力。

可移植性:C程序只需要稍作修改或不修改,通过其他系统的C编译器进行编译就能其他的系统上运行。而无论是使用家庭计算机、专业工作站,还是大型机;无论是使用Windows、Unix、linux还是Mac操作系统;从8位微处理器到超级计算机都能找到针对特定系统的C编译器。

强大而灵活:很多的操作系统有C程序的代码以及很多编程语言的编译器、解释器都由C语言实现,C程序还可解决物理学、工程学的问题,甚至可用于制作电影的动画特效

面向程序员:程序利用C可以访问硬件、控制内存中的位。

2.2 缺点

C语言功能强大,但却很容易犯错误。特别是指针的使用很强大,但稍不留神就容易出错。

3 C语言标准 3.1 K&R C或经典C

 1987年,布莱恩·柯林汉(Brian Kernighan)和丹尼斯·里奇(Dennis Ritchie)合著的The Programming Language第一版是公认的C标准,通常称之为K&R C或经典C。实际上,由于缺乏官方标准,UNIX实现提供的库已成为标准库。

3.2 ANSI/ISO C标准(也叫C89或C90标准)

美国国家标准协会(ANSI)于1983年组建了一个委员会(X3J11),开发了一套新标准,并于1989年正式公布。该标准定义了C语言和C标准库。

国际标准化组织与1990年采用了这套C标准(ISO C)。ISO C和ANSI C是完全相同的标准。

ANSI/ISO标准的最终版本通常叫作C89(因为ANSI于1989年批准该标准)或C90(因为ISO于1990年批准该标准)。另外,由于ANSI先发布C标准,因此业界人士通常使用ANSI C。

3.3 C99标准

1994年,ANSI/ISO 联合委员会(C9X委员会)开始修订C标准,最终发布了C99标准。

3.4 C11标准

标准委员会在2007年承诺C标准的下一个版本是C1X,2011年终于发布了C11标准。

 4 C程序的编译与链接

C程序的源代码通过编译器的编译生成目标代码,目标代码、库代码和启动代码通过连接器的链接生成可执行代码。其过程如下图所示:

C语言学习笔记01——C语言概述

学习书籍《C Primer Plus 第六版》笔记

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wpypxf.html