关键字

本文详细介绍了编程中常见的变量修饰符,如register、static、extern、const及typedef等的作用与使用限制,并解释了volatile如何防止编译器优化。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

register  寄存器变量(优点:省去了cpu从内存中抓取变量的时间)

作用:请求编译器将变量尽可能的保存在寄存器中。

对象:频繁被访问的对象。

注意点

1.只能修饰局部变量,不能修饰全局变量和函数。

2.可能不是在内存中存储,所以不能用&符号来获得变量的地址。

3.必须是cpu所接受的变量类型。

 

cpu三大组成部分

1.运算器

2.控制器

3.存储器(寄存器)

 

static

1.修饰局部变量时,保存在静态数据区,使变量的生命周期延长至程序结束。

2.修饰全局变量时,只能在当前文件访问,不能在其他文件访问。

3.修饰函数时,函数只能在本文件内被调用,不能在其他文件中被调用。

 

static修饰的变量没有初始化时全部为0

 

extern:外部声名,声明一个变量在其他文件中定义,当前文件可以访问。

 

const:只读变量

const int num = 5;(当前const修饰的仅仅是变量名,而不是对应的空间,也就是说可以通过指针来修改其地址对应的值)

 

const两个注意点

1.离谁近,谁就不能变。

2.修饰一个变量时一定要初始化。

 

typedef:给数据类型重写名字

 

typedef unsigned char

 

效果:

1.提高了移植性

2.对代码起到了保护作用

 

volatile

作用:防止编译器优化

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值