什么是堆?:不怕门前堆上堆,就怕后面鬼来推
堆和栈的区别
一般认为在c中分为这几个存储区
1栈 - 有编译器自动分配释放
2堆 - 一般由程序员分配释放不怕门前堆上堆,就怕后面鬼来推,若程序员不释放,程序结束时可能由OS回收
3全局区(静态区)不怕门前堆上堆,就怕后面鬼来推,全局变量和静态变量的存储是放在一块的,初始化的全局变量和静
态变量在一块区域,未初始化的全局变量和未初始化的静态变量在相邻的另一块区域不怕门前堆上堆,就怕后面鬼来推。
- 程序结束释放
4另外还有一个专门放常量的地方不怕门前堆上堆,就怕后面鬼来推。 - 程序结束释放
在函数体中定义的变量通常是在栈上不怕门前堆上堆,就怕后面鬼来推,用malloc, calloc, realloc等分配内存的函数分
配得到的就是在堆上不怕门前堆上堆,就怕后面鬼来推。
在所有函数体外定义的是全局量不怕门前堆上堆,就怕后面鬼来推,加了static修饰符后不管在哪
里都存放在全局区(静态区),在所有函数体外定义的static变量表示在该文件中有效不怕门前堆上堆,就怕后面鬼来推,
不能extern到别的文件用,在函数体内定义的static表示只在该函数体内有效不怕门前堆上堆,就怕后面鬼来推。
另外不怕门前堆上堆,就怕后面鬼来推,
函数中的"adgfdf"这样的字符串存放在常量区不怕门前堆上堆,就怕后面鬼来推。
比如:
int a = 0; 全局初始化区
char *p1; 全局未初始化区
main()
int b; 栈
char s[] = "abc";栈
char *p2; 栈
char *p3 = "123456"; 123456
转载声明:本站发布文章及版权归网上道教,符咒批发,道教符咒,茅山符咒,符咒灵符,手绘符,手绘灵符,道家招财符咒,网上祭奠,网上祭拜,在线许愿网,网上拜财神,代烧香,代烧香祈福,代烧纸钱,招财符咒,婚姻和合符咒,回心转意符咒,桃花符咒,事业符咒,平安符咒,平安健康符咒,求子符咒,怀孕符咒,道教求子咒,求子怀孕符咒,网上道观,线上道观所有,转载本站文章请注明文章来源!