C/C++发展历史简单介绍
C语言之所以要起名为“C”,是因为它是主要参考那个时候的一门叫B的语言,它的设计者认为C语言是B语言的进步,所以就起名为C语言;但是B语言并不是因为之前还有个A语言,而是B语言的作者为了纪念他的妻子,他的妻子的第一个字母是B;
当C语言发展到顶峰的时刻,出现了一个版本叫C with Class,那就是C++最早的版本,在C语言中增加class关键字和类,那个时候有很多版本的C都希望在C语言中增加类的概念;后来C标准委员会决定为这个版本的C起个新的名字,那个时候征集了很多种名字,最后采纳了其中一个人的意见,以C语言中的++运算符来体现它是C语言的进步,所以就叫C++,也成立了C++标准委员会;
刚诞生的C++和现在我们使用的版本是有很大区别的,首先还没有一个真正的C++编译器,早期的C++代码都是先转化为C代码,然后用C编译器直接编译的;而且,那时的C++没有继承,没有private, protected, public这些关键字,没有虚函数;虚函数是最后才被加入C++的主要特性;就这样经过了N次演变,每次逐步增加一些新的关键字和新特性,最后才变成现在的样子;
还有就是STL,它是C++自C语言发展以来,唯一一个凭空诞生的部分,之前没有任何类似于STL的代码,编译器没有模板,在实际的使用中也没有这样的呼声;那完全得宜于STL的倡导者对C++标准委员会的游说,他的高瞻远瞩,令现在的无数人收益;是他在没有任何基础与实践的前提下,提出要将模板加入C+ +的标准,并增加模板类库;在该C++标准发布时,世面上没有一个支持该标准的C++编译器,它完全不是实践经验的总结,而是凭空的想象;
C语言的历史:
著名的计算机科学家丹尼斯·里奇(Dennis Ritchie)创造的。1967年, Ritchie进入贝尔实验室工作。贝尔实验室是当时世界上最有创造力的地方之一,著名的C语言、C++语言和Unix操作系统都诞生于此。一开始, 里奇和他的同事肯·汤普生开始研究DEC PDP-7机器,但是在这个机器上写程序很困难,只能用很底层很高深的汇编语言。于是汤普生设计了一种高级程序语言,并把它命名为B语言。但是由于B语言本身设计的缺陷,使他在内存的限制面前一筹莫展。1973年,里奇决定对B语言进行改良,他赋予了新语言强有力的系统控制方面的能力,并且新语言非常简洁、高效,里奇把它命名为C语言,意为B语言的下一代。在开发C语言的同时,里奇和汤普生、布朗(贝尔实验室的另一名科学家)还接受
相关文档:
定义按值传递和按引用传递这两个术语是重要的。
按值传递意味着当将一个参数传递给一个函数时,函数接收的是参数的一个副本。因此,如 果函数修改了该参数,仅改变副本,而原始值保持不变。按引用传递意味着当将一个参数传递给一个函数时,函数接收的是参数的内存地址,而不是参数的副本。因 此,如果函数修改了该参数,调 ......
检查空格字符
#include <ctype.h>
int isspace ( int c );
http://www.cplusplus.com/reference/clibrary/cctype/isspace/
Checks if parameter c is a white-space character.For the purpose of this function, standard white-space characters are:
' '
(0x20)
space (SPC)
'\t'
(0x09)
horizontal tab ......
要写好C语言程序,最重要的当然是把要解决的问题分析清楚,设计好解决问题的方案和通过计算实现求解的过程,对问题的求解过程进行科学的结构化的分解。在此基础上进一步考虑如何写程序的时候,下面的建议可能有所帮助。
这些建议中有些是一般性的,不仅仅对C语言程序设计有效;也有些是特别针对C语言程序设计的。这个表还 ......
C标准库头文件 assert.h
@函数名称: assert
函数原型: void assert(int exp)
函数功能: 诊断类:表达式结果正确性测试并可使程序中止
函数返回:
参数说明: 将错误信息输出到流stderr中,如果exp为0,则中止程序执行.exp-表达式
所属文件: & ......