内存

来源:互联网 发布:js 滚动延迟加载 编辑:程序博客网 时间:2024/05/02 01:46

内存:

C语言中,一般把内存分为5部分,分别为:全局区、代码区、常量区、堆、栈。

接下来介绍一下这五个不同的区域:

1.全局区:这个区贯穿整个程序的运行区,用于存放全局变量、静态变量。全局变量的分配和释放都由编译器来自动完成。

2.代码区:存放程序的区域。

3.常量区:在编程过程中存放常量,常量的分配和释放都由编译器来自动完成。

4.堆:在程序运行过程中,通常会产生一些临时的数据,所以编译器需要分配出来内存来存储这些数据,但是这些数据是临时的,所以程序运行完之后需要回收内存,这就是所谓的内存动态的分配和释放。这些过程就是在堆上来进行的,但是由于编译器不知道什么时候来分配和释放内存,所以需要程序员来进行分配和回收。

5.栈:在编程中,经常会有函数的调用,那么我们也应该想一下被调用的函数是存储到那个区域中。首先,我们来说明一下被调用函数,被调函数的函数仅且只能供函数本身使用的变量,称为局部变量,这些变量在调用函数时分配空间,调用完后,自动释放空间,这类的数据就存储在栈中。像这样的数据还有我们平时所遇到的调用函数时的形参等等。

1 0
原创粉丝点击