C语言学习day07:类型限定

类型限定:

需要的限定符:

限定符

含义

extern
声明一个变量,extern声明的变量没有建立存储空间
const
定义一个变量,常量的值不能修改
const int a=10;
volatile
防止编译器优化代码
register
防止寄存器变量,提高效率。register是建议型指令,而不是命令型的指令,如果CPU有空闲寄存器,那么register就生效,如果没有空闲寄存器,那么register无效

extern:

声明变量:告诉内存有那么一个变量,可能没使用,但是有那么一个变量

代码:

int main01()
{
	//声明变量:告诉内存有那么一个变量,可能没使用,但是有那么一个变量
	extern int a;
	//定义+赋值
	int a = 10;
	return EXIT_SUCCESS;
}

const:

定义一个常量:常量的值不能修改

代码:

int main02() {
	//定义一个常量:常量的值不能修改
	const int a = 10;
	return 0;
}

volatile:

防止编译器优化代码

举个例子:

    假如有一个U盘,在里面我们写了个int a;

    因为一个U盘,它的格式我们不确定

    所以a没有赋值,编译器检测到后,可能直接删掉(优化掉);

    a删掉后插进U盘中,a就不见了用不了了

代码:

int main03() {
	//防止编译器优化代码
	/*
	假如有一个U盘,在里面我们写了个
	int a;
	a没有赋值,编译器检测到后,可能直接删掉(优化掉);
	a删掉后插进U盘中,a就不见了用不了了
	*/
	volatile int a;
	return 0;
}

register:

定义寄存器变量:提高效率

这是建议型指令,建议不使用,占用内存

int main04() {
	//定义寄存器变量:提高效率
	//这是建议型指令,建议不使用,占用内存
	register int a;
	return 0;
}

  • 7
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值