常量和变量
2016-02-16 21:40
134 查看
常量:
固定的数据
四类:整型 浮点型(单精度和双精度) 字符型 字符串型
字符型常量:不能是中文,单引号引起来的
字符串型常量:双引号引起来的
变量:
表示一个需要经常改变或者不确定的数据
特点:
1. 创建了一个变量相当于在内存中占用了一片空间
2. 空间的大小是固定的,但里面的数据可以改变
3.同一个作用域内不能有相同的变量名.在不同作用域内没有问题
4.初始化时创建,在函数作用域执行完后失效,且内存空间释放.
作用域:
作用域可以嵌套作用域
1.不同函数属于平行作用域,作用域没有干扰.
2.同一个函数下的作用域可以有多个.
嵌套作用域:子作用域内部创建变量跟外部没有关系,但是可以用外部的变量(就近原则).
3.子作用域定义的变量只在本作用域内有效,在父作用域内是用不了的.
优点:灵活控制内存
变量内存分析
1.内存基本单位是字节.
2.变量内存分配与赋值与否没有关系
3.不同类型的数据变量在不同编译环境下的占用内存空间大小是不一样的.
4.当前环境占用内存字节数sizeof(数据类型),打印占位用lu
5.内存由地址从大到小寻址,优先分配内存地址较大的字节给变量
6.在变量未经初始化赋值之前,不要使用变量的值.
固定的数据
四类:整型 浮点型(单精度和双精度) 字符型 字符串型
字符型常量:不能是中文,单引号引起来的
字符串型常量:双引号引起来的
变量:
表示一个需要经常改变或者不确定的数据
特点:
1. 创建了一个变量相当于在内存中占用了一片空间
2. 空间的大小是固定的,但里面的数据可以改变
3.同一个作用域内不能有相同的变量名.在不同作用域内没有问题
4.初始化时创建,在函数作用域执行完后失效,且内存空间释放.
作用域:
作用域可以嵌套作用域
1.不同函数属于平行作用域,作用域没有干扰.
2.同一个函数下的作用域可以有多个.
嵌套作用域:子作用域内部创建变量跟外部没有关系,但是可以用外部的变量(就近原则).
3.子作用域定义的变量只在本作用域内有效,在父作用域内是用不了的.
优点:灵活控制内存
变量内存分析
1.内存基本单位是字节.
2.变量内存分配与赋值与否没有关系
3.不同类型的数据变量在不同编译环境下的占用内存空间大小是不一样的.
16位编译器 | 32位编译器 | 64位编译器 | |
char | 1 | 1 | 1 |
int | 2 | 4 | 4 |
float | 4 | 4 | 4 |
double | 8 | 8 | 8 |
5.内存由地址从大到小寻址,优先分配内存地址较大的字节给变量
6.在变量未经初始化赋值之前,不要使用变量的值.
相关文章推荐
- [LeetCode] Increasing Triplet Subsequence
- 编程题#1:输出200(C++程序设计第10周)
- Manacher
- 并查集之团伙(codevs)
- linux下调整firefox的有用设置(高分辨率下需要)
- Java基础02 方法与数据成员
- python 内置模块
- 流量统计的原理
- Windows的shell下,杀掉某进程
- ubuntu14.04 clementine音乐播放器无法播放ape格式解决方法
- CGCS2000、WGS84以及ITRF问题的阐述
- 阿岳之_nginx篇(一)
- 一起啃PRML - 1 Introduction 绪论
- WPF PRISM开发入门一( 初始化PRISM WPF程序)
- "0" != 0
- oracle表连接------>排序合并连接(Merge Sort Join)
- oracle 删除旧的归档文件或跟踪文件
- Android最佳性能实践(二)——分析内存的使用情况
- C语言获取目录下目录&文件列表
- oc加强day01作业答案