首页 >常见问题 >C语言和C++有什么区别

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

清浅
清浅原创
2019-02-23 16:32:5624271浏览

C语言与C++的区别有:C属于面向过程语言,C++属于面向对象语言;另外它们的文件后缀名,关键字,函数返回值,函数重载以及参数列表等方面都不相同

对于C语言和C++来说,很多人都容易把C++当做C语言的的升级版,其实它俩之间并不是升级或替代的关系。接下来在文章中将为大家具体介绍这两者之间的区别,希望对大家有所帮助。

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

【推荐课程:C语言教程C++教程

C语言和C++的区别

(1)面向过程语言和面向对象语言

C语言是面向过程语言,即先分析出解决问题的步骤然后再将这些步骤一一实现

C++是面向对象语言,即把问题分成若干个对象,目的是为了描述某个事物在解决整个问题的步骤中的行为

(2)关键字不同

C语言中有32个关键字,而C++有63个关键字。另外在C语言中struct关键字定义的变量不能有函数,而在C++中可以有函数

(3)文件后缀名不同

C语言中源文件的后缀名是.c,C++源文件后缀名是.cpp

(4)函数返回值不同

C语言中如果一个函数没有指定返回值类型,默认返回int类型;C++中如果一个函数没有返回值则必须指定为void

(5)函数重载

函数重载是函数的一种特殊情况,指在同一作用域中,声明几个功能类似的同名函数,这些同名函数的形参列表(参数个数、类型、顺序)必须不同,返回值类型可以相同也可以不同,常用来处理实现功能类似数据类型不同的问题。

C语言中由于函数符号的规则是根据名称产生的,因此它不具备函数重载,而C++生成的函数符号则考虑了函数名,参数以及参数类型等

所以C++可以根据函数名参数个数参数类型来判断重载,属于静多态,必须同一作用域下才叫重载

(6)参数列表

在C语言中函数没有指定参数列表时,默认可以接收任意多个参数;但在C++中,因为严格的参数类型检测,没有参数列表的函数,默认为 void,不接收任何参数

总结:以上就是本篇文章的全部内容了,希望对大家有所帮助。

以上是C语言和C++有什么区别的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn