C++真的能兼容C吗?

总结:C++虽然改造自C,但是二者并非完全兼容,且语法中存在一定差异,上述几点,并非C与C++全部差异

================================

C++真的能兼容C吗?

今天看到了网上说C是C++的子集,C++可以兼容C,这是真的吗?

要弄明白这个问题,首先,先简单介绍一下这两个语言

    C:C语言是一门面向过程的、抽象化的通用程序设计语言。C语言诞生于美国的贝尔实验室,C语言之所以命名为C,是因为他的前身是B语言,经过多年发展,最终在1972年,正式推出。

    C++:C++是一种高级程序设计语言,1979年,本贾尼·斯特劳斯特卢普,对C进行了改良工作,改良后,该语言被正式命名为C++。

以据以上介绍,C++确实是从C改进而来,但是,它真的能和C兼容吗?也就是网上说的

    用C语言编写的程序可以不加修改地用于C++

是这样吗?

我来测试一下,下面的6段代码,分别在C和C++中是否可以正常编译、运行。

测试环境:cygwin、gcc 11.2

准备完毕,开始

结论:在C中,字符将会被当作int类型使用,长度为4,C++中,字符就字符类型,长度为1


总结:C++虽然改造自C,但是二者并非完全兼容,且语法中存在一定差异,上述几点,并非C与C++全部差异

————————————————
版权声明:本文为CSDN博主「你的薄荷醇」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_44305576/article/details/123620419

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值