龙空技术网

《C语言自我总结》第一章 C语言简介

程序技术斋 306

前言:

如今小伙伴们对“c语言课设总结”大体比较注意,朋友们都需要剖析一些“c语言课设总结”的相关文章。那么小编在网摘上收集了一些有关“c语言课设总结””的相关资讯,希望姐妹们能喜欢,朋友们快快来了解一下吧!

一直想对自己过去的学习、开发有个总结。就从自己对C语言的认识了解开始吧!水平有限,希望和大家多交流!

《C语言自我总结》第一章 C语言简介

1. C语言的起源和历史

C语言最初由Dennis Ritchie于1969年到1973年在AT&T贝尔实验室里发明出来,当时主要是为了重写UNIX操作系统。

由于C语言被各大公司所使用(包括当时处于鼎盛时期的 IBM PC),1983年夏,成立了一个委员会来创建定义C语言的ANSI(American National Standards Institute,美国国家标准协会)标准。1989年12月,ANSI C标准最终被采纳并于1990年初开始使用。这个标准也为ISO(International Standards Organization,国际标准化组织)所接受,于1990年发布了ISO/IEC 9899: 1990作为C语言国际标准。1989年标准定义的C版本通常称为C89(也有人称C90)。

在随后的几年里,C语言的标准化委员会又不断地对C语言进行改进,到了 1999年,正式发布了ISO/IEC 9899: 1999,通常称为C99。C99引入了许多革命性的新特性,包括内联函数(inline functions)、可变长度的数组、灵活的数组成员(用于结构体)、指定成员的初始化器、对IEEE754浮点数的改进、支持不定参数个数的宏定义、restrict指针限定符,在数据类型上还增加了long long int以及复数类型。到目前为止,很少有C语言编译器是完整支持C99的。像GCC 以及Clang编译器都能支持高达90%以上,而微软的Visual Studio 2015中的C编译器只能支持到70%左右。

2007年,C语言标准委员会又重新开始修订C语言,到了2011年正式发布了ISO/IEC 9899: 2011,通常称为C11。C11新引入的特征尽管没C99相对C89引入的那么多,但是这些也都十分有用,比如:字节对齐说明符、泛型机制(generic selection)、对多线程的支持、静态断言、原子操作以及对Unicode 的支持。

2. C语言特点

C语言的特点是支持对位、字节、字和指针的直接操作。这使得它非常适用于系统级软件(如操作系统、编译器)的编程,在系统级编程中经常见到这些操作。

C语言的另一个重要特点是它仅有少量的关键字。例如C89仅定义了32个关键字,C99又添加了5个。某些编程语言的关键字数量是C语言的几倍多,比如BASIC语言有超过100个关键字。

C语言是结构化语言。结构化语言的一个显著特征是:代码和数据的分离。获得分离的一种方式是调用使用局部变量的子例程。C语言的主要结构化组成部分就是函数。

3. C标准函数库

从技术上讲,完全自己编写程序来完成一个有用的C程序是可能的。然而,这种情况少之又少,因为C语言都没有提供任何关键字来执行I/O操作、高级数学计算或字符处理这些常用功能。因此,绝大多数程序都包含对标准库中所含的各种函数的调用。所有的C编译器都是和C标准函数库一起提供的。

4. C语言out了吗?

互联网、人工智能快速发展的今天,C语言似乎渐渐失去了昔日的荣光,在语言排行榜上的第一名的位置已经让给了Java;游戏领域C++已经占有了一席之地;Web领域,Ruby、Go、Python、JavaScript这些语言各自占着不同比例的“市场份额”。那问题来了,C语言是否还有市场?。

其实,目前承载着计算机技术的大部分基础都和C语言脱不了关系。比如,Python、Rub这些解释语言的解析器,目前使用最广泛的服务端操作系统Linux的内核,以及我们目前用得最多的版本管理系统Git,他们都是大神们用C语言编写而成的。嵌入式、物联网领域C语言也有相当大的开发份额。

所以,C语言没有out!它过去、现在、将来都有很大的运用空间。

TOP 10 编程语言走势图

下章预告:C语言表达式

标签: #c语言课设总结