变量的作用域和生命周期 常量

变量的作用域:

作用域是一段程序代码中所用到的名字并不总是有效的或可用的,而限定这个名字的可用性的代码范围就是这个名字的作用域

1.局部变量:

局部变量的作用域就是他所在的局部范围:

int main()
{
   int a=10;//在只有这个a变量的时候两个printf都能输出这个a
   {
     int a=5;//只有int a=5这个括号里的printf可以输出这个a
     printf("a=%d\n",a);
   }
   printf("a=%d\n",a);
   return 0;
}

2.全局变量

全局变量的作用域为整个工程

局部变量放在内存的栈区,全局变量是放在内存的静态区

局部变量和全局变量重名时局部变量会覆盖全局变量 

一个局部变量不初始化默认是随机值,一个全局变量不初始化默认是0.

变量的生命周期:

1.局部变量的生命周期:进入作用域生命周期开始出作用域生命周期结束

2.全局变量的生命周期:整个程序的生命周期

常量:

1.字面常量:写出的数字 整型常量(e.g.30) 浮点型常量(e.g.2.3) 字符型常量(用单引号引字符e.g.'c')字符串常量(e.g."abc")

2.const修饰的常量(不能被改变)在c语言中,e.g. const int a=10,在c语言中const修饰的a本质上还是变量只不过有常量的属性

3.#define定义的标识符常量

#define Max 100//定义一个标识符常量Max值为100

int main()
{
  printf("%d\n",a);//可以直接打印
  int a=Max;//可以直接代入用
  printf("%d\n",a);
  return 0;
}

这个代码运行出来就是100 100;把标识符常量换成字符串运行出来就是字符串

4.枚举常量enum(一一列举)(不能改e.g.不能写RED=10

enum color
{
  RED,
  BLUE,
  GREEN
};
int main()
{
   enum color c=RED;
   return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值