c++对c的增强

本文主要介绍c++对c语言所增强的内容

1. 增加了命名空间(namespace)

2. "实用性"增加

C语言中的变量都必须在作用域开始的位置进行定义
C++中强调语言的“实用性”,所有的变量都可以在需要的时候进行定义

3. register关键字(register关键字请求将其修饰的变量存放在寄存器中)

4. 变量检测的增强

在c语言中,重复定义多个同名的全局变量是合法的
在c++中,不允许定义多个同名的全局变量
c语言中多个同名的全局变量最终会被链接到全局数据区的同一个地址空间上

5. struct类型加强(可以完成和class一样的功能,同时也有一定的区别)

C语言的struct定义了一组变量的集合,C编译器不认为这是一种数据类型
C++中的struct是一个新类型的定义声明

6. C++中所有的变量和函数都必须有类型

	在c语言中:
		int f();表示返回值为int,接受任意的参数
		int f();表示返回值为int的无参函数
	在c++中:
		int f()和 int f(void)都表示返回值为int的无参函数

7. 新增加了bool类型关键字

原始的c语言是没有bool关键字的,在c99之后就可以支持bool关键字了
因此可以说bool是c++新增的关键字

8. 三目运算符:

	a.在c语言中,三目运算符的返回值是变量的值
	  在c++中,三目运算符返回的是变量的本身
	b.在c语言中,实现三目运算符的返回值做左值**左值**
	   左值:可以进行修改的内存空间(在c语言中,三目运算符不可以当左值,在c++中,三目运算符可以当左值)
	   *(a < b?&a:&b) = 30 首先表达式返回的是一个地址,进行*运算可以进行修改地址中的内容,
	   在c++编译器完成了取地址这步工作
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

XXXXiaojie

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值