C 语言和 C++ 有什么区别


本文摘自PHP中文网,作者Guanhui,侵删。

C 语言和 C++ 有什么区别

1、C语言是面向过程的,而C++是面向对象的;

2、C语言的标准的函数库很松散,而C++对于大多数的函数都是集成的很紧密;

3、C语言中结构只有成员变量,而在C++中结构中,可以有成员变量和成员函数。

语法上的区别

struct

在C语言中,试用定义的struct类型的变量方式:struct [定义的变量] [生成的变量];在C++语言中,试用定义的struct类型的变量方式:struct [定义的变量] [生成的变量]或者[定义的变量] [生成的变量]。

在C语言中struct定义的变量中不能有函数,而在C++中可以有函数。

函数的参数以及返回值(以test()为例)

C语言中,表示参数可有可无,返回值为int;C++中表示无参函数,由于无返回值导致语法错误,但是当无返回值的函数为构造函数的时候例外。

malloc

malloc函数的返回值为void*,在C语言中可以赋值给任意类型的指针,在C++中必须进行强制类型装换,否则报错。

malloc、free和new、delete

malloc、free在C和C++中均可使用,但是在C++中更多的是使用 new、delete。malloc、free是函数,而new、delete是操作符,两组堆内存的操作不能混用。

struct和class

class是对struct的扩展,struct默认的访问权限是public,而class默认的访问权限是private。


推荐教程:《C#》

以上就是C 语言和 C++ 有什么区别的详细内容!

相关阅读 >>

c源程序中不允许出现空语句吗?

关于c++中的引用总结

c++如何从函数返回数组

visualc++6.0怎么使用

c语言的文件存取方式只能是顺序存取?

c++语言标识符的命名规则是什么?

c++运算符重载的方法有哪些

最新总结c语言中关于指针等相关理解和使用事宜

c++清屏函数是什么

c++隐式类型转换是什么?

更多相关阅读请进入《c》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...