admin 管理员组

文章数量: 887021


2023年12月21日发(作者:pycharm知乎)

C语言和C++有什么关系

C语言和C++有什么关系

C语言和C++到底有什么关系?顾名思义,C++是在C的基础上增加新特性,玩出了新花样,所以叫”C Plus Plus“,就像 iPhone 7 和 iPhone

6、Win10 和 Win7 的关系。下面具体分析,一起来看看。

C++ 读作”C加加“,是”C Plus Plus“的简称。

顾名思义,C++是在C的基础上增加新特性,玩出了新花样,所以叫”C Plus Plus“,就像 iPhone 7 和 iPhone 6、Win10 和 Win7 的关系。

C语言是1972年由美国贝尔实验室研制成功的,在当时算是高级语言,它的很多新特性都让汇编程序员羡慕不已,就像今天的Go语言,刚出生就受到追捧。C语言也是”时髦“的语言,后来的很多软件都用C语言开发,包括 Windows、Linux 等。

但是随着计算机性能的飞速提高,硬件配置与几十年前已有天壤之别,软件规模也不断增大,很多软件的体积都超过 1G,例如

PhotoShop、Visual Studio 等,用C语言开发这些软件就显得非常吃力了,这时候C++就应运而生了。

C++ 主要在C语言的基础上增加了面向对象和泛型的机制,提高了开发效率,以适用于大中型软件的'编写。

C++和C的血缘关系

早期并没有”C++“这个名字,而是叫做”带类的C“。

”带类的C“是作为C语言的一个扩展和补充出现的,目的是提高开发效率,如果你有Java Web开发经验,那么你可以将它们的关系与 Java

和 JSP 的关系类比。

这个时期的C++非常粗糙,仅支持简单的面向对象编程,也没有自己的编译器,而是通过一个预处理程序名字叫 cfront,先将C++代码”翻译“为C语言代码,再通过C语言编译器合成最终的程序。

随着C++的流行,它的语法也越来越强大,已经能够很完善的支持面向对象编程和泛型编程。

但是一直也没有诞生出新的C++编译器,而是对原来C编译器不断扩展,让它支持C++的新特性,所以我们通常称为C/C++编译器,因为它同时支持C和C++,例如 Windows 下的微软编译器,Linux 下的 GCC 编译器。

也就是说,你写的C、C++代码都会通过一个编译器来编译,很难说C++是一门独立的语言,还是对C的扩展。

C++是在C语言的基础上进行的扩展,C++包含了C语言的全部内容。下图展示了它们之间的关系:

图:C语言和C++的关系

关于C++的学习

从“学院派”的角度来说,C++支持面向过程编程、面向对象编程和泛型编程,而C语言仅支持面向过程编程。

就面向过程编程而言,C++和C几乎是一样的,所以学习了C语言,也就学习了C++的一半,不需要从头再来。

没有任何编程基础的读者,建议先从C语言学起,不要贪多嚼不烂。等你熟悉了C语言,能编写出上百行的代码,就对编程有些概念了,这个时候再去了解C++究竟在C语言基础上增加了什么,你就站在了一定的高度。

有编程基础的读者,相信你自己能做出正确的判断。


本文标签: C语言 基础 软件 编程 开发