第二章

本文详细介绍了局部变量的作用域规则,包括主函数与其他函数之间的变量隔离、形参与实参的区别、复合语句内的变量定义等。此外还解释了static、extern、const、auto及register等关键字的作用及用法。
摘要由CSDN通过智能技术生成

局部变量的作用域:

1.主函数中定义的变量只能在主函数中使用,不能在其他函数中使用,同时,主函数也不能使用其他函数中定义的变量

2.形参变量是属于被调函数的局部变量,实参变量是属于主调函数的局部变量

3.允许在不同函数中使用相同变量名,它们代表不同的对象,分配不同的单元,也互不干扰

4.在复合语句中也可以定义变量,其作用域只在复合语句范围内

static与extern

static:用static进行修饰,该变量存放在静态数据区,其生命周期持续到整个程序执行结束,但是其作用域不发生变化,在用其修饰局部变量后,该变量只在初次运行时进行初始化工作,且只进行一次。

extern:当我们在本文件里引用一个外部声明的全局变量或函数,可以在其前面加上extern。在任何函数体外声明或定义变量时,不加extern可能时定义也可能是声明,但是加extern肯定是声明。

chara[]=”hello”;

intmain()

{

externint a;

printf(“%x\n”,a);

return0;

}

const:用来修饰变量时,表示该变量里的数据可以被访问,不能被修改。

auto: 在函数生命周期中声明的变量叫局部变量,也叫自动变量(这个变量放在内存栈中,声明入栈,使用完出栈,先进后出)。

register:用来修辞变量时,就意味着该变量会作为一个寄存器变量,让该变量的速度达到最快。

volatile:修饰变量后,每次对其值进行访问时,都会从内存里,寄存器里读取。

typedef:

使用的目的一般有两个,一个是给变量一个新名字,另一个是简化一些比较复杂的类型声明,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值