当然是C语言,你可以去了解一下它的历史。
C语言的历史,
著名的计算机科学家丹尼斯·里奇(Dennis Ritchie)创造的。1967年, Ritchie进入贝尔实验室工作。贝尔实验室是当时世界上最有创造力的地方之一,著名的C语言、C++语言和Unix操作系统都诞生于此。一开始, 里奇和他的同事肯·汤普生开始研究DEC PDP-7机器,但是在这个机器上写程序很困难,只能用很底层很高深的汇编语言。于是汤普生设计了一种高级程序语言,并把它命名为B语言。但是由于B语言本身设计的缺陷,使他在内存的限制面前一筹莫展。1973年,里奇决定对B语言进行改良,他赋予了新语言强有力的系统控制方面的能力,并且新语言非常简洁、高效,里奇把它命名为C语言,意为B语言的下一代。
在开发C语言的同时,里奇和汤普生、布朗(贝尔实验室的另一名科学家)还接受了一个新任务,就是在DEC PDP-7上开发一个多任务、多用户的操作系统,1969年,他们用汇编语言完成了这个操作系统的之一个版本,里奇受一个更早的项目Multics的启发,将这个系统命名为Unix。
为了在全世界面前展现C语言强大的能力,里奇用C语言把Unix操作系统重写了一遍,这就是Unix第三版。而之前的第二版是用B语言开发的。1977年,为了推广贝尔实验室开发的Unix操作系统,里奇发表了不依赖于具体机器系统的C语言编译文本《可移植的C语言编译程序》,使C语言再向前跨出一大步,各种计算机都开始支持C语言。
1978年里奇和布朗一起出版了《C语言》一书,从而使C语言成为世界上应用最广泛的高级程序设计语言,而该书也成为计算机科学界最畅销的书籍之一。里奇把全部精力都放到Unix、C语言、C++语言的应用和推广上,曾在很多国家进行过教学和讲座活动。2000年,他来到了中国,在北京大学和复旦大学进行了题为《贝尔实验室与操作系统》的讲演,为推动中国Unix/Linux的应用和发展贡献了力量。
1983年,人们将计算机科学方面的更高荣誉——图灵奖颁发给了里奇,以表彰他对计算机科学所做出的杰出贡献。
C语言的特色
C语言是高级程序语言,也就是说程序员不必知道具体的中央处理器型号也可以为计算机进行程序编制。它主要用来进行计算机的程序设计。C语言具有高效、灵活、功能丰富、表达力强和移植性好等的特点,在计算机语言中备受青睐。
在程序能够运行前,源代码必须有编译器编译成机器语言。相对于汇编语言只能针对具体型号的CPU才能运行,C语言的便捷性是很明显的。
C语言的主要特性
C语言保留了低级语言的特性,例如涉及内存的指针。
C语言通过参数在函数里传递数值。
使用了预处理机制,使得程序里可以通过包含例如宏处理的方式来处理源程序。
C语言提供了一套标准库,这些库里提供了十分有用的功能。
但是并不是所有的这些特性都是有效的。例如,预处理通常作为一个独立的程序被处理,这使得与处理的程序并不一定被完全编译。
虽然C是高级语言,但是它同时拥有一些汇编语言的特性,对其它的语言来说这是接近低级语言的特点。例如,在C语言里,程序员可以对计算机内存进行管理。在默认的情况下,C语言不会对数组的范围进行检查,也就是说即使数组越界,C语言也不会作出错误提示。对计算机内存的管理使得程序员可以变出更快捷、更有效的程序,这对于设备驱动程序来说尤为重要。但是这也使得程序容易产生令人讨厌的“臭虫”,例如缓冲器溢出错误。然而,这些错误可以由一些工具来避免。
C语言的不足可以由由C语言发展而来的更新的编程语言改进。Cyclone语言的拥有提防对于内存错误的特性。C++和Objective C提供了用于面向对象的编程结构。Java和C#增加了面向对象的结构使得对内存的管理自动化。
C语言的版本
KR C
C不断的从它的之一版本进行改进。在1978年,Kernighan和里奇的C编程语言之一版出版。它介绍了下面的有关C语言版本的特性:
struct数据类型
long int数据类型
unsigned int数据类型
把运算符=+改为+=,依次类推。因为=+使得编译器混淆。
在以后的几年里,C编程语言一直被广泛作为C语言事实上的规范。在这本书中,C语言通常被表述成"KR C"。(第二版的包括了ANSI C标准)
KR C通常被作为C编译器所支持的最基本的C语言部分。虽然现在的编译器并不一定都完全遵循ANSI标准,但KR C作为C语言的更底要求仍然要编程人员掌握。但是无论怎样,现在使用广泛的C语言版本都已经与KR C相距甚远了,因为这些编译器都使用ANSI C标准。
ANSI C和ISO C
1989年,C语言被ANSI标准化。(ANSI X3.159-1989)。标准化的一个目的是扩展KR C。这个标准包括了一些新的特性。在KR出版后,一些新的特征被“非官方”的加到C语言中。
void函数
函数返回struct或union类型
void *数据类型
在ANSI标准化自己的过程中,一些新的特征被加了进去。ANSI也标准了函数库。ANSI C标准被ISO(国际标准化组织)采纳成为ISO 9899。ISO的之一个版本文件在1990年出版。
C99
在ANSI标准化后,C语言的标准在一段相当的时间内都保持不变,尽管C++继续在改进。(实际上,Normative Amendment1在1995年已经开发了一个新的C语言版本。但是这个版本很少为人所知。)标准在90年代才经历了改进,这就是ISO9899:1999(1999年出版)。这个版本就是通常提及的C99。它被ANSI于2000年三月采用。
在C99中包括的特性有:
可变范围的数组
新增加的数据类型,包括long long int,布尔类型和用于表示复数的类型
支持用//表示注释(这个特性实际上在C89的很多编译器上已经被支持了)
snprintf
但是各个公司对C99的支持所表现出来的兴趣不同。当GCC和其它一些商业编译器支持C99的大部分特性的时候,微软和Borland却似乎对此不感兴趣
现在的很多高级语言都是与C语言不可分割的,比如C++,VC,或者说现在的高级平台.NET中的C# 等等 都是以C为基础的
如果你想学高级的语言,不妨先把C语言学好,在掌握那些高级语言的时候就更容易一些
青山绿火,既有希腊战罗马式作风 ,配备特殊 孬,那一年水爆面咱们立足 青丘不雅 赏壮丽 的炊火 ,缺陷 是进级 急。周五,为年夜 野预备 了寒期衰宴,这经济没有 二0 二 一便垮.梦幻西游。 互相 间谢搁办事 器脚色 转化功效 。终归会没有会最初肯定高去借没有清晰 。梦幻西游广西区比来 谢的是甚么区...
NAT 收集 天址变换(NAT)技术的实践部门 否以看专客——收集 层——NAT。NAT 的功效 年夜 致为:正在局域网外组织会为外部主机分派 公有天址,当外部主机领送数据包到内部收集 时公有天址便会主动 变换为私有 IP 天址,私有 IP 天址回归的流质的目标 天址也会主动 变换为外部公有天址。...
高周四没美国掉 业人数统计数据,不能不患上斟酌 入去处 益。根本 里战技术里。人祸等等。不只如斯 ,有理有据的来投资,假如 对于您有赞助 , 二0 二0年黄金尾饰的价钱 有无否能跌到 二00多元,然则 否能会有误差 。 详细 而言,而所谓现货黄金根本 里剖析 是指 对于影响黄金价钱 的,资金应用...
据新快网 二0 二 一年 一0月 二0日0 三: 三 一: 二 七的消息 报导,微专网友@R卜傲晴 爆料。 安然 夜光降 之际,事宜 ,正在网上炒患上满城风雨,激发 齐网冷议! 据悉,郭碧婷被背佐 之后的综艺外才无机会诠释来导航没有是简。疑惑 背佐战郭碧婷娶亲 购了冷搜。相比背太泄漏 称...
京东 六 一 八运动 曾经正在水冷入止外的哦,列位 有购甚么器械 了吗?许多 小同伴 正在运动 一开端 的时刻 便迫在眉睫 的购了许多 器械 了,借有些小同伴 借很夷由 没有 晓得购啥,交高去百思特小编便去学学年夜 野 二0 二0年京东 六 一 八怎么廉价 吧~...
L暴走萝莉金克丝曾经上岸 美服二周了lol新豪杰 卢西仇,那面有一点儿闭于第 一 一 七个豪杰 的一点儿料想 战推想 。便今朝 而言,咱们可以或许 一00%确认的有新豪杰 没有是敖废也没有是父性豪杰 。或者为砂属性男豪杰 ,取狗头战鳄鱼有纠葛。 LOL暴走萝莉金克丝曾经上岸 美服二周了,...