C++是兼容C的吗?

C++是兼容C的吗?


www说
浏览 1236回答 1
1回答

慕妹3146593

 它们只是语法具有相似性,并没有什么本质的关联,也并不完全兼容  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++,如果你只需要做内核或者做驱动。千万不能因为一些基础的关键字和语法特征相似而认为他们兼容。
打开App,查看更多内容
随时随地看视频慕课网APP