数据类型与变量常量(下)

数据类型与变量常量(下)

一.变量常量的用途

数据类型的主要功能为创建变量和常量,变量和常量是用来存储数据的容器

二.变量

1.语法规则:data_type name-- 数据类型+变量名

2.命名规则:只能由字母(大小写)、数字、下划线组成

不能由数字开头

长度不能超过63个字符

不能使用关键字

3.初始化:变量在创建时给的初始值

三.全局变量与局部变量

1.全局变量:函数之外定义的变量(在整个工程中都能使用

作用域:从定义位置开始到整个源文件的末尾

生命周期:程序启动时创建,程序结束时才销毁

初始值:若没有初始化,系统会自动初始化为0

局限:过多使用全局变量会使模块间耦合度过高,调试困难

2.局部变量:大括号内部定义的变量

作用域:仅限于它定义的函数和代码块内部,外部无法访问

生命周期:进入函数或代码块时创建,退出时自动销毁

初始值:如果没有初始化,其值是垃圾值(不确定的随机数),但在gcc上 会默认为0,所以一定要先初始化

总结:局部变量优先于全局变量

四.变量的存储

1.内存中的三个区域

栈区、堆区、静态区

2.栈区

用于存放局部变量和函数参数

3.堆区

用于动态内存管理

4.静态区

用于存放全局变量和静态变量

五.常量

分类:字面常量、符号常量、const常量、枚举常量

1.字面常量:

2进制:0、1

8进制:0、1、2、3、4、5、6、7

10进制:0、1、2、3、4、5、6、7、8、9

16进制:0、1、2、3、4、5、6、7、8、9、a、b、c、d、e、f

注意: 以0开头为8进制字面常量,以0x开头为16进制字面常量

以u为后缀代表无符号整型

以l为后缀为长整型

1.2e3-- 1.2*103 表示科学计数法

2.符号常量:

通常名字大写

变量在函数内部可以改,但常数不可以改

3.const常量:

const修饰的是变量但是在初始化后该变量不可以修改