码迷,mamicode.com
首页 > 编程语言 > 详细

C语言存储区域

时间:2016-10-06 17:22:28      阅读:155      评论:0      收藏:0      [点我收藏+]

标签:

有错误请指教

1.文字常量区域  存储在 代码段   不能被修改 

2.全局变量  静态存储区  存储在  数据段

3.函数中的局部变量 存储在  栈中  

4.malloc  new  中的变量存储在  堆中间

测试  函数  转载  http://blog.csdn.net/u010070526/article/details/41748043

  1. int a = 0; //全局初始化区  
  2. char *p1; //全局未初始化区  
  3. int main() {  
  4. int b; //栈  
  5. char s[] = "abc"; //栈  
  6. char *p2; //栈  
  7. char *p3 = "123456"; //123456在常量区,p3在栈上。  
  8. static int c =0;//全局(静态)初始化区  
  9. p1 = new char[10];  
  10. p2 = new char[20];  
  11. //分配得来得和字节的区域就在堆区。  
  12. strcpy(p1, "123456"); //123456放在常量区,编译器可能会将它与p3所指向的"123456"优化成一个地方。  
  13. }  

C语言存储区域

标签:

原文地址:http://www.cnblogs.com/eat-too-much/p/5933973.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!