一、 变量的内存分析 1. 字节和地址 为了更好地理解变量在内存中的存储细节,先来认识一下内存中的“字节”和“地址”。 1> 内存以“字节为单位” 0x表示的是十六进制,不用过于纠结,能看懂这些数字之间谁大谁小就行了 2> 不同类型占用的字节是不一样的,数据越大,所需的字节数就越多 2. 变量的存储...
分类:
编程语言 时间:
2015-05-17 23:12:16
阅读次数:
172
内存管理:栈区 [stack]:由编译器自动分配并释放,一般存放函数的参数值,局部变量等堆区 [heap]:由程序员分配和释放,如果程序员不释放,程序结束时,可能会由操作系统回收全局区(静态区) [static]:全局变量和静态变量的存储是放在一起的,初始化的全局变量和静态变量存放在一块区域,未初始...
分类:
其他好文 时间:
2015-05-16 16:20:14
阅读次数:
105
内存分配方式有三种: (1) 从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量,static 变量。(2) 在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分 配运算内置于处...
分类:
编程语言 时间:
2015-05-14 23:22:32
阅读次数:
222
我们知道,从变量的作用域(即从空间)角度来分,可以分为全局变量和局部变量。从另一个角度,从变量值存在的作时间(即生存期)角度来分,可以分为静态存储方式和动态存储方式。 静态存储方式:是指在程序运行期间分配固定的存储空间的方式。 动态存储方式:是在程序运行期间根据需要进行动态的分配存储空间的方式。.....
分类:
编程语言 时间:
2015-05-14 11:44:34
阅读次数:
120
C/C++ 知识点---存储区 在C++中,内存分成5个区,他们分别是堆、栈、自由存储区、全局/静态存储区和常量存储区。 栈,就是那些由编译器在需要的时候分配,在不需要的时候自动清楚的变量的存储区。里面的变量通常是局部变量、函数参数等。 堆,就是那些由new分配的内存块,他们的释放编译器不去管,由....
分类:
编程语言 时间:
2015-05-05 00:00:31
阅读次数:
180
栈:在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放.栈内存分配运算内置于处理器的指令集中,效率很高,但是分配容量有限. (就是存放对象)堆:就是那些由new分配的内存块,他们的释放编译器不去管,由我们的应用程序去控制,一般一个new就要对应一个dele....
分类:
其他好文 时间:
2015-05-02 13:37:16
阅读次数:
143
一般认为在c中分为这几个存储区1栈 - 有编译器自动分配释放2堆 - 一般由程序员分配释放,若程序员不释放,程序结束时可能由OS回收3全局区(静态区),全局变量和静态变量的存储是放在一块的,初始化的全局变量和静态变量在一块区域,未初始化的全局变量和未初始化的静态变量在相邻的另一块区域。 程序结束释放...
分类:
其他好文 时间:
2015-05-01 18:39:59
阅读次数:
138
转载请标明出处:http://blog.csdn.net/u012637501
多级指针
指针变量保存的是指向变量地址,有点需要区别:
1. 数据类型 * 变量名:* 表示该变量为指针变量,存放的是(数据类型)变量的存储地址,如int
*p=&i;
2. * 指针变量:*表示指向"以指针变量的内容为存储地址的变量",如*p=i;
§举例1:多级指针的关系
#incl...
分类:
其他好文 时间:
2015-04-25 13:43:41
阅读次数:
230
转载请标明出处:http://blog.csdn.net/u012637501
内存的存储是以一个字节为一个编号,也就是8位合在一起给一个编号,不是0,1就给编号。 内存分为很多个单元,每个单元就会分配一个编号。
指针核心:
(1)数据类型 * 变量名:* 表示该变量为指针变量,存放的是(数据类型)变量的 存储地址,如int
*p=&i;
(2)* 指针变量:...
分类:
其他好文 时间:
2015-04-25 13:43:15
阅读次数:
216
(1)C语言跟内存分配方式从静态存储区域分配. 内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在.例如全局变量、static变量.在栈上创建 在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放.栈内存分配运算内置于处理器的指令集中,效率很...
分类:
编程语言 时间:
2015-04-24 16:16:38
阅读次数:
122