收藏 分享(赏)

C++与C语言的区别.doc

上传人:HR专家 文档编号:7532095 上传时间:2019-05-20 格式:DOC 页数:7 大小:24KB
下载 相关 举报
C++与C语言的区别.doc_第1页
第1页 / 共7页
C++与C语言的区别.doc_第2页
第2页 / 共7页
C++与C语言的区别.doc_第3页
第3页 / 共7页
C++与C语言的区别.doc_第4页
第4页 / 共7页
C++与C语言的区别.doc_第5页
第5页 / 共7页
点击查看更多>>
资源描述

1、注明:以下及其后续内容部分摘自Standard C+ Bible,所有程序代码都在Visual Stdio 6.0中编译运行,操作系统为WinXP。本文不涉及VC6.0开发工具的使用,只讲解C+语法知识。C+和C的共同部分就不讲解了(如常量和变量,循环语句和循环控制,数组和指针等,这里面的一些区别会在本节和下节介绍一下),具体可看精华区-新手上路-C语言入门,本文着重介绍C+的特点,如类、继承和多重继承、运算符重载、类模板、C+标准库、模板库、等等。一、C+概述(一) 发展历史1980年,Bjarne Stroustrup博士开始着手创建一种模拟语言,能够具有面向对象的程序设计特色。在当时,面

2、向对象编程还是一个比较新的理念,Stroustrup博士并不是从头开始设计新语言,而是在C语言的基础上进行创建。这就是C+语言。1985年,C+开始在外面慢慢流行。经过多年的发展, C+已经有了多个版本。为次,ANSI和ISO的联合委员会于1989年着手为C+制定标准。 1994年2月,该委员会出版了第一份非正式草案,1998年正式推出了C+的国际标准。(二) C和C+C+是C的超集,也可以说C是C+的子集,因为C先出现。按常理说,C+编译器能够编译任何C程序,但是C 和C+还是有一些小差别。例如C+增加了C不具有的关键字。这些关键字能作为函数和变量的标识符在C程序中使用,尽管 C+包含了所有

3、的C,但显然没有任何C+编译器能编译这样的C程序。C程序员可以省略函数原型,而C+不可以,一个不带参数的 C函数原型必须把void 写出来。而C+可以使用空参数列表。C+中new 和delete 是对内存分配的运算符,取代了C中的malloc 和free 。标准C+中的字符串类取代了C标准C 函数库头文件中的字符数组处理函数。C+中用来做控制态输入输出的iostream类库替代了标准C中的stdio函数库。C+中的try/catch/throw异常处理机制取代了标准C中的setjmp()和longjmp()函数。二、关键字和变量C+相对与C增加了一些关键字,如下:typename bool d

4、ynamic_cast mutable namespacestatic_cast using catch explicit newvirtual operator false private templatevolatile const protected this wchar_tconst_cast public throw friend truereinterpret_cast trybitor xor_e and_eq compl or_eqnot_eq bitand在C+中还增加了bool型变量和wchar_t型变量:布尔型变量是有两种逻辑状态的变量,它包含两个值:真和假。如果在表达式

5、中使用了布尔型变量,那么将根据变量值的真假而赋予整型值1或0 。要把一个整型变量转换成布尔型变量,如果整型值为0,则其布尔型值为假;反之如果整型值为非0,则其布尔型值为真。布儿型变量在运行时通常用做标志,比如进行逻辑测试以改变程序流程。#include iostream.hint main()bool flag;flag=true;if(flag) couta; /*输入一个数值*/couta;六、函数重载在C+中,允许有相同的函数名,不过它们的参数类型不能完全相同,这样这些函数就可以相互区别开来。而这在C语言中是不允许的。1.参数个数不同#include iostream.hvoid a(i

6、nt,int);void a(int);int main()a(5);a(6,7);return 0;void a(int i)couta;for(int i=1;isize;int *array=new intsize;for(int i=0;i等运算符#include iostream.hvoid func1(s p);void func2(sstruct sint n;char text10;int main()static s str=123,China;func1(str);func2(str);return 0;void func1(s p)coutdt;if(dt0 coutBD.MONTH ?bd.yearendl;return 0;程序都很简单,就不讲解了。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报