计算机二级考试C语言与C++有什么区别
各位前辈多多指教,急! 展开
两者区别如下:
一、编程语言类型不同
C语言是一门面向过程、抽象化的通用程序设计语言,广泛应用于底层开发。C语言能以简易的方式编译、处理低级存储器。C语言是仅产生少量的机器语言以及不需要任何运行环境支持便能运行的高效率程序设计语言。既可用来编写系统软件,又可用来开发应用软件。
C++是C语言的继承,它既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计,还可以进行以继承和多态为特点的面向对象的程序设计。C++擅长面向对象程序设计的同时,还可以进行基于过程的程序设计。
二、编程语言特性不同
C语言描述问题比汇编语言迅速,工作量小、可读性好,易于调试、修改和移植,而代码质量与汇编语言相当。C语言一般只比汇编语言代码生成的目标程序效率低10%~20%。因此,C语言编译器普遍存在于各种不同的操作系统中,C语言可以编写系统软件。
C++语言的程序因为要体现高性能,所以都是编译型的。但其开发环境,为了方便测试,将调试环境做成解释型的。即开发过程中,以解释型的逐条语句执行方式来进行调试,以编译型的脱离开发环境而启动运行的方式来生成程序最终的执行代码。
扩展资料:
C语言的优势特性:
1、C语言是一个有结构化程序设计、具有变量作用域(variable scope)以及递归功能的过程式语言。
2、C语言传递参数均是以值传递(pass by value),另外也可以传递指针(a pointer passed by value)。
3、不同的变量类型可以用结构体(struct)组合在一起。
4、只有32个保留字(reserved keywords),使变量、函数命名有更多弹性。
5、部份的变量类型可以转换,例如整型和字符型变量。
6、通过指针(pointer),C语言可以容易的对存储器进行低级控制。
7、预编译处理(preprocessor)让C语言的编译更具有弹性。
参考资料来源:百度百科-C语言
参考资料来源:百度百科-C++
参考资料来源:百度百科-计算机二级考试
你也可以多问问老师同学的意见,我的话不一定可信。自己把握自己!努力!!!
C++ 和 C 的设计哲学并不一样,两者取舍不同,所以不同的程序员和软件项目会有不同选择,难以一概而论。与 C++ 相比,C 具备编译速度快、容易学习、显式描述程序细节、较少更新标准(后两者也可同时视为缺点)等优点。在语言层面上,C++ 包含绝大部分 C 语言的功能(例外之一,C++没有C99的变长数组VLA),且提供 OOP 和 GP 的特性。但其实用 C 也可实现 OOP 思想,亦可利用宏去实现某程度的 GP,只不过 C++ 的语法能较简洁、自动地实现OOP/GP。C++ 的 RAII(resource acquisition is initialization,资源获取就是初始化)特性比较独特,C/C#/Java 没有相应功能。回顾历史,Stroustrup 开发的早期 C++ 编译器 Cpre/Cfront 是把 C++ 源代码翻译为 C,再用 C 编译器编译的。由此可知,C++ 编写的程序,都能用等效的 C 程序代替,但 C++ 在语言层面上提供了 OOP/GP 语法、更严格的类型检查系统、大量额外的语言特性(如异常、RTTI等),并且 C++ 标准库也较丰富。有时候 C++ 的语法可使程序更简洁,如运算符重载、隐式转换。但另一方面,C 语言的 API 通常比 C++ 简洁,能较容易供其他语言程序调用。因此,一些 C++ 库会提供 C 的 API 封装,同时也可供 C 程序调用。相反,有时候也会把 C 的 API 封装成 C++ 形式,以支持 RAII 和其他 C++ 库整合等。
结构体就是 可以把所有C库 变量 和函数 都能包含的一个集体
比如 你用QQ 发送一条消息给对方
简单的数据结构可以是一个结构体
struct message{
char c_NameorID[255],//(发的对方的名字或ID)
char * p_Message ,// 消息的一个指针 存你要发给对方的消息(字符串(char数组))地址
......(还有其他的一些IP等变量)
} *p_Message;
调用的话 就用p_Message 这个指针
c++
class CMessage
{
char c_NameorID[255],//(发的对方的名字或ID)
char * p_Message ,// 消息的一个指针 存你要发给对方的消息(字符串(char数组))地址
......(还有其他的一些IP等变量)
} ;
class CMessage h_pMessage;
调用 的话 用句柄 h_pMessage;
-------------
面向对象的话
C++ 就要牵扯到继承 这个是C++ 有的特点
C中 只能通过包含这个结构体的声明的头文件 来使用
此外还有,C语言与C++的区别有很多:
1,全新的程序程序思维,C语言是面向过程的,而C++是面向对象的。
2,C语言有标准的函数库,它们松散的,只是把功能相同的函数放在一个头文件中;而C++对于大多数的 函数都是有集成的很紧密,特别是C语言中没有的C++中的API是对Window系统的大多数API有机的组合 ,是一个集体。但你也可能单独调用API。
3,特别是C++中的图形处理,它和语言的图形有很大的区别。C语言中的图形处理函数基本上是不能用在 中C++中的。C语言标准中不包括图形处理。
4,C和C++中都有结构的概念,但是在C语言中结构只有成员变量,而没成员方法,而在C++中结构中,它 可以有自己的成员变量和成员函数。但是在C语言中结构的成员是公共的,什么想访问它的都可以访问 ;而在VC++中它没有加限定符的为私有的。
5,C语言可以写很多方面的程序,但是C++可以写得更多更好,C++可以写基于DOSr程序,写DLL,写控件 ,写系统。
6,C语言对程序的文件的组织是松散的,几乎是全要程序处理;而c++对文件的组织是以工程,各文件分 类明确。
7,C++中的IDE很智能,和VB一样,有的功能可能比VB还强。
8,C++对可以自动生成你想要的程序结构使你可以省了很多时间。有很多可用的工具如加入MFC中的类的 时候,加入变量的时候等等。
9,C++中的附加工具也有很多,可以进行系统的分析,可以查看API;可以查看控件。
10,调试功能强大,并且方法多样。
每年举行2次C语言二级考试,4月的第一个星期六和9月的第3个星期六
有机试和笔试,各100分
广告 您可能关注的内容 |