C语言历史与特点 - 从B语言到ANSI C

需积分: 22 1 下载量 200 浏览量 更新于2024-07-14 收藏 7.98MB PPT 举报
"C语言课程资源,讲解C语言常见错误及C语言的历史和发展" 在学习C语言的过程中,我们常常会遇到一些常见的错误。例如,在数组的使用中,定义了一个3×4的数组`int a[3][4];`,然后尝试赋值`a[3][4]=3;`这样的操作会导致越界,因为数组的索引是从0开始的,所以最大的合法索引是`a[2][3]`。在编程时,确保数组的下标值始终在已定义的数组大小范围内是至关重要的,否则可能会引发未定义的行为,导致程序崩溃或者数据损坏。 C语言是一种强大的、低级别的编程语言,它起源于1970年代的B语言。C语言由D.M.Ritchie在B语言的基础上创建,最初用于开发UNIX操作系统。由于其简洁、高效和接近硬件的特性,C语言迅速流行起来,并在1978年有了Brian W. Kernighan和Dennis M. Ritchie合著的经典教材《The C Programming Language》,这本著作通常被称作“K&R”书籍,对C语言的推广产生了深远影响。 随着时间的推移,C语言经历了多次标准化的过程。1983年,美国国家标准化协会(ANSI)制定了ANSIC标准,进一步完善了C语言。1987年,ANSI发布了87ANSI C标准,1990年这个标准被国际标准化组织(ISO)采纳为ISO C标准,即ISO 9899-1990。随后在1994年,ISO对C语言标准进行了修订。这些标准的制定使得C语言在不同的平台和编译器上具有了一致性和可移植性。 然而,不同的C编译系统可能对某些语言特性有不同的实现或扩展。因此,了解你正在使用的编译器的具体特点是非常必要的,这样可以帮助你避免因编译器差异而产生的问题。例如,某些编译器可能支持一些非标准的特性,而其他编译器则可能不支持。在编写代码时,遵循标准C(通常指ANSI C或ISO C)的规范,可以使你的代码更具有跨平台性。 在学习C语言的过程中,除了理解基本语法和错误处理之外,还需要掌握程序的结构和在计算机上运行C程序的方法。C程序通常由预处理、编译、链接等步骤构成。预处理处理#include指令、宏定义和其他预处理指令;编译阶段将源代码转换为汇编语言;链接阶段将编译后的对象文件与库函数连接,生成可执行文件。理解这一过程对于调试和优化代码是至关重要的。 C语言是一门强大的编程语言,它的历史和标准化过程使其成为了全球广泛采用的编程工具。在学习过程中,注意数组边界、理解程序结构和编译过程,以及熟悉所使用的C编译器的特点,这些都是成为一名熟练的C程序员的关键。