C和C++区别为:结构不同、设计不同、函数库不同。
一、结构不同
1、C语言:C语言结构只有成员变量,而没成员方法。
2、C++:C++结构中可以有自己的成员变量和成员函数。
二、设计不同
1、C语言:C语言进行过程化、抽象化的通用程序设计。
2、C++:C++既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计,还可以进行以继承和多态为特点的面向对象的程序设计。
三、函数库不同
1、C语言:C语言有标准的函数库,它们松散的,只是把功能相同的函数放在一个头文件中。
2、C++:C++对于大多数的函数都是有集成的很紧密,是一个集体。
C是C++的一个子集。
C++是C的超集,也可以说C是C++的子集,因为C先出现,C++编译器能够编译任何C程序。
C是面向过程的,数据与算法分开,它的重点在于算法和数据结构,侧重于计算机底层操作;C++是面向对象的,主要特点是类,封装和继承,与C的区别主要为 :类、继承和多重继承、运算符重载、类模板、C++标准库、模板库。
C可以省略函数原型,而C++不可以,一个不带参数的C函数原型必须把void写出来,而C++可以使用空参数列表。
C 和 C++ 中都有结构的概念,但是在 C 中结构只有成员变量,而没成员方法,而在 C++ 中结构中,它可以有自己的成员变量和成员函数。
C 对程序的文件的组织是松散的,几乎是全要程序处理;而 C++ 对文件的组织是以工程,各文件分类明确。
C++中new和delete是对内存分配的运算符,取代了C中的malloc和free。
C++中用来做控制态输入输出的iostream类库替代了标准C中的stdio函数库。
C++中的try/catch/throw异常处理机制取代了标准C中的setjmp()和longjmp()函数。