C语言简介

C语言简介

编程语言发展简史

机器语言时期(1842年~约1970年)

奥古斯塔·阿达·金,勒芙蕾丝伯爵夫人(Augusta Ada King, Countess of Lovelace,1815年12月10日-1852年11月27日),原名奥古斯塔·阿达·拜伦(Augusta Ada Byron),通称阿达·洛芙莱斯(Ada Lovelace),是著名英国诗人拜伦之女,数学家,计算机程序创始人。

阿达·洛芙莱斯是有史记载的第一位采用程序化编程语言(机器语言)编程的人,被认为是“程序员的鼻祖”、“第一位给计算机编写程序的人”。

阿达·洛芙莱斯最早使用的程序编程语言称为“机器语言”,形式为打孔纸带。机器语言是一种直接编写二进制的语言,非常复杂难懂,但是执行效率最高,因此仍然有许多程序员使用。直至高级编程语言发明后机器语言才被逐渐淘汰。

汇编语言时期(1946~今)

由于机器语言过于复杂、困难,且打孔纸带不便修改与保存,因此机器语言的升级版——汇编语言便应运而生。

汇编语言(assembly language)可以视为机器语言的升级版,使用助记符代替机器语言的二进制码,使用地址符或者标签(label)作为地址。

通常情况下来说,不同的机器指令集对应不同的汇编语言,因此不同版本的汇编语言不可直接移植。

高级编程语言前期(1957~今)

汇编语言对于新手程序员来说仍然过于晦涩难懂,且汇编语言不便移植的特点也一定程度限制了汇编语言的流行。因此,汇编语言的升级版——面向过程的编程语言出现了。

1957年,IBM发明的FORTRAN语言可以视为第一类面向过程的编程语言,但是FORTRAN语言对程序书写格式的要求相当严格,使用起来十分困难。

1972年发明的Pascal语言与C语言可以称之为面向过程的编程语言的代表。C语言的发明人Dennis Ritchie同时也是Unix系统的发明人之一,因此C语言搭借操作系统而全球风靡

高级编程语言后期(1980~今)

1980年,Alan Kay创造了Smalltalk并发明了“面向对象”这个词。不过对于当时的程序员来说,“面向对象”这个词过于抽象难以理解。

1983年,Bjarne Stroustrup对C语言进行的大幅度的升级,将“面向对象”的概念嫁接到C语言上,创造出了C++语言。

1986年,Brad Cox和Tom Love创造了Objective-C。

1991年,荷兰程序员Guido van Rossum发明了Python语言。

1990年,James Gosling发明了Oak编程语言,该语言在1995年改名为Java。James Gosling也被称为“Java之父”。

自然语言编程(未来)

编程语言的发展流程

机器语言 (古老)-----> 汇编语言 (较老,不太常见)-----> 高级编程语言 (常见)-----> 自然语言(新,发展未成熟)
难------------------------->简单
与电脑亲和度高------------>与电脑亲和度低
底层----------------------->高层

高级语言分类

通常情况下,我们可以按照编程语言的运行方式,将编程语言分为:
编译型编程语言(如C、C++等)
解释型编程语言(如Python等脚本语言,以及Linux下的Shell编程)
还可以按照编程语言的发展先后顺序或者编程语言的属性,将编程语言分为:
面向过程的编程语言(较少,如C语言、Pascal语言)
面向对象的编程语言(较多,目前广泛应用)

/面向对象语言/
相对于面向过程的编程语言,面向对象的编程语言具有3个显著的特点:封装、继承、多态

封装 (encapsulation):隐藏对象的属性和实现细节,仅对外公开接口,控制在程序中属性的读取和修改的访问级别。

继承(inheritance):继承是面向对象语言的重要机制。借助继承,可以扩展原有的代码,应用到其他程序中,而不必重新编写这些代码。

在java语言中,继承是通过扩展原有的类,声明新类来实现的。扩展声明的新类称为子类,原有的类称为超类(父类)。继承机制规定,子类可以拥有超类的所有属性和方法,也可以扩展定义自己特有的属性,增加新方法和重新定义超类的方法。

多态(Polymorphism):多态性是允许你将父对象设置成为一个或更多的他的子对象相等的技术,赋值之后,父对象就可以根据当前赋值给它的子对象的特性以不同的方式运作。

/面向对象语言end/

//JAVA属于半编译半解释型语言

C语言:

1)通过以上分类可以知道,C语言属于面向过程的编译型编程语言

2)C语言是美国Dennis Ritchie在1972年设计发明的,C语言主体诞生于1973年,正式发行于1977年

3)C语言经历过几个修订版本,其中影响比较大的是1989年修订的C89版与1999年修订的C99版。C89版也是当代C语言通行的基础版本

4)C语言主要用于编写操作系统内核、底层驱动程序、小型应用程序、数据库等,借助操作系统,C语言长期处于编程语言排行榜前几位的位置。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值