C语言变量理解
来源:互联网 发布:淘宝ka商家标准 编辑:程序博客网 时间:2024/06/12 01:26
数据类型:
数据类型的本质:固定大小的内存的别名
1byte char1个byte的内存用char来表示
2byte short2个byte的内存用short来表示
4byte int4个byte的内存用int来表示
auto即C语言中局部变量的默认属性
编译器默认所有的局部变量都是auto的,指明该变量是在程序的栈上面分配空间的
static关键字指明变量的“静态”属性
static修饰的局部变量存储在程序的静态区分配空间,static关键字同时具有“作用域限定符”的意义
作用域限定符:
static修饰的全局变量作用域只在声明的文件中,只能在该文件中被调用
static修饰的函数作用域只在声明的文件中,也就是只在该文件中可以被调用,其他文件中不能被调用
register关键字指明将变量存储于寄存器中
register只是请求寄存器变量,但不一定请求成功,register指明的变量的长度必须是CPU寄存器可以接受的值
不能用&运算符获取register变量的地址,&只能取内存中的地址,因为寄存器不属于内存
寄存器变量只可能是局部变量,寄存器变量用在对实时性要求非常高的系统当中。
**************************
数据类型的本质:固定大小的内存的别名
1byte char1个byte的内存用char来表示
2byte short2个byte的内存用short来表示
4byte int4个byte的内存用int来表示
变量:
变量的本质:变量是一段实际连续存储空间的别名,程序中通过变量来申请并命名存储空间,通过变量的名字可以使用存储空间。
变量的属性:c语言中的变量可以有自己的属性,在定义变量的时候可以加上“属性”关键字,“属性”关键字指明变量的特有意义auto即C语言中局部变量的默认属性
编译器默认所有的局部变量都是auto的,指明该变量是在程序的栈上面分配空间的
static关键字指明变量的“静态”属性
static修饰的局部变量存储在程序的静态区分配空间,static关键字同时具有“作用域限定符”的意义
作用域限定符:
static修饰的全局变量作用域只在声明的文件中,只能在该文件中被调用
static修饰的函数作用域只在声明的文件中,也就是只在该文件中可以被调用,其他文件中不能被调用
register关键字指明将变量存储于寄存器中
register只是请求寄存器变量,但不一定请求成功,register指明的变量的长度必须是CPU寄存器可以接受的值
不能用&运算符获取register变量的地址,&只能取内存中的地址,因为寄存器不属于内存
寄存器变量只可能是局部变量,寄存器变量用在对实时性要求非常高的系统当中。
**************************
小结:
变量用来标识一段连续的内存,而变量前面的数据类型用来标识这段连续内存的长度。
例如: int a=13; 表示用一段内存来保存数据13,并为该段内存起名为a,而该段内存的长度则为4个byte(int类型)。
auto 指明的变量存储在程序的栈中,默认属性
static 指明的变量在程序的静态区中分配空间
register 指明的变量是向编译器请求存储在CPU寄存器中 0 0
- C语言变量理解
- 理解C语言中变量的实质
- C语言中变量的理解
- C语言深入理解 - 常量与变量
- 如何理解C语言中的变量声明
- 3、C语言的变量简易理解
- c语言的几点心得,变量的深入理解
- 从内存理解c语言中变量的存储类型
- 从内存理解c语言中变量的存储类型
- [C语言]菜鸟一些理解—变量常量
- 从内存理解c语言中变量的存储类型
- 对C语言数据类型和变量的理解
- 从内存理解c语言中变量的存储类型
- 内存角度理解C语言中变量的存储形式
- C语言初学--对全局变量和局部变量的理解
- 关于c语言不同类型变量存放位置的个人理解
- 从内存理解c语言中变量的存储类型
- 关于C语言变量内存分配一些自己的理解。
- 理解交叉熵
- OAuth2:客户端验证授权(Resource Owner Password)类型的开放授权
- 平衡查找二叉树
- OpenCV 实现SSIM结构相似性算法
- C笔试之二
- C语言变量理解
- Bios int 中断手册查询
- 交换机配置命令总结1
- NSFileManager
- [macOs]查看端口占用情况
- Leetcode 237. Delete Node in a Linked List
- Android 下载并打开PDF,Doc,Dwg文档
- 用xampp搭建wordpress的一些常见问题
- 浅谈二分查找算法