得分点:面向对象和面向过程、重载、voidstruct、函数参数默认值、内联函数、引用、动态内存分配、作用域。
标准回答:C 语言和 C++ 语言的区别如下:
1.C 语言是面向过程的语言,而C++ 支持面向对象,所以C 语言自然没有面向对象的封装、继承、多态等特性,也不支持面向对象的一些语法;
2.C++ 支持函数重载,C语言不支持;
3.C 程序中如果函数没有任何参数需要将参数定义为 void 以此来限定函数不可传递任任何参数,如果不进行限定让参数表默认为空其意义是可以传递任何参数,在C++中,不带参数的函数表示函数不能传递任何参数;
4.C语言struct 中不能有函数,而C++ 语言 struct 中可以有函数;
5.C 语言函数参数不支持默认值,而 C十语言支持参数默认值;
6.C++ 语言支持内联函数,而C语言不支持;
7.C++ 语言支持引用,而C语言不支持;
8.C 语言采用 malloc和free 函数动态申请和释放内存,而C++ 使用new 和delete 运算符;
9.C 语言中只有局部和全局两个作用域,而C++中有局部、全局、类、名称空间作用域。