为了账号安全,请及时绑定邮箱和手机立即绑定

C++是兼容C的吗?

C++是兼容C的吗?

C++
www说 2018-09-10 12:08:59
C++是兼容C的吗?
查看完整描述

1 回答

?
慕妹3146593

TA贡献1820条经验 获得超9个赞

 它们只是语法具有相似性,并没有什么本质的关联,也并不完全兼容
  C语言和C++语言语法具有相似性,但是差异还是比较大的:
  1 关键字不一样。C++具有更多的关键字。而c语言的关键字要少很多。
  2 相同的关键字解释也不一定相同。比如struct解释就不一样。C++中struct实际上是按照类(也就是class)来解释的,可以有成员函数、成员变量、构造函数、析构函数等等。C语言里面的struct是一种数据结构,不存在成员函数或者构造函数等等东西。
  3 C++拥有域名空间、模板等更加先进的语法特征,而C语言不具备这些。
  4 使用的编译器也不相同。在linux中,C++使用的是g++编译器,而C是用的gcc编译器。如果将C++代码传入gcc编译器,它会调用g++去编译。如果你用g++编译c语言代码,它会按照c++的方式解释代码,这样可能一些结构体的行为会和你预期的行为不一致。
  5 他们使用的范围不同。c++一般是面向应用级别的程序开发,c语言则是面向内核或者驱动级别的开发。c语言现在一般没有用于应用开发的了。

  6 使用的库也不一样。C++可以使用C的库,但是C语言不一定能够使用C++的库,除非C++的库接口是按照C语言的规范编写的。
  7 C语言是一种面向过程开发的语言,核心是函数和数据结构。C++是一种面向对象开发的语言,核心是类和复用。
  总之他们并不相同,也不能混为一谈。你可以直接学习C++而跳过C语言,这样反而对于你理解C++的思想有好处。你也可以单独学习C语言,而不学C++,如果你只需要做内核或者做驱动。千万不能因为一些基础的关键字和语法特征相似而认为他们兼容。

查看完整回答
反对 回复 2018-10-20
  • 1 回答
  • 0 关注
  • 1233 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信