c++ 全局变量 保存在什么地方,局部变量保存在什么地方

一道填空题,答案众多,问一问高人

五大内存分区
在C++中,内存分成5个区,他们分别是堆、栈、自由存储区、全局/静态存储区和常量存储区。
栈,就是那些由编译器在需要的时候分配,在不需要的时候自动清楚的变量的存储区。里面的变量通常是局部变量、函数参数等。
堆,就是那些由new分配的内存块,他们的释放编译器不去管,由我们的应用程序去控制,一般一个new就要对应一个delete。如果程序员没有释放掉,那么在程序结束后,操作系统会自动回收。
自由存储区,就是那些由malloc等分配的内存块,他和堆是十分相似的,不过它是用free来结束自己的生命的。
全局/静态存储区,全局变量和静态变量被分配到同一块内存中,在以前的C语言中,全局变量又分为初始化的和未初始化的,在C++里面没有这个区分了,他们共同占用同一块内存区。
常量存储区,这是一块比较特殊的存储区,他们里面存放的是常量,不允许修改
温馨提示:内容为网友见解,仅供参考
第1个回答  2008-05-04
全局在静态存储区,全局变量是程序是整个程序都需要用到的,单独分出一块存储区保存,该存储区存储的数据不清空.
局部变量是函数退出时自动清空的,所以放在栈里做临时存储
new,malloc分配的内存需要自己手动申请自己手动释放,在堆内存里

c++ 全局变量 保存在什么地方,局部变量保存在什么地方
全局\/静态存储区,全局变量和静态变量被分配到同一块内存中,在以前的C语言中,全局变量又分为初始化的和未初始化的,在C++里面没有这个区分了,他们共同占用同一块内存区。常量存储区,这是一块比较特殊的存储区,他们里面存放的是常量,不允许修改 ...

c++中数组和对象的数据是存储在栈内存还是堆内存?
new创建的数据 都是放在堆里面的 局部变量是放在栈内存 全局变量、静态变量是放在静态存储区里面的

语句"int a;"定义的变量a存储在内存的什么存储区
要看a是写在程序中的哪一个位置,如果是局部变量(例:函数体内),那么存放在栈区;全局变量一般存放在静态区。在C++中,内存分成5个区,他们分别是 堆、栈、自由存储区、全局\/静态存储区和常量存储区。栈,就是那些由编译器在需要的时候分配,在不需要的时候自动清楚的变量的存储区。里面的变量通常...

请问C++语言里静态变量和全局变量有什么区别?谢谢
2. 全局变量、静态全局变量、静态局部变量都是在静态存储区(全局数据区)中分配空间的,而局部变量是在栈上分配空间的。3. 全局变量、静态变量的生命期和程序生命期是一样的,在程序结束之后操作系统会回收空间。4. 全局变量和静态变量都是保存在静态存储区中,生命期和程序一样,但是不同的是全局变...

c++中两个局部变量和全局变量,变量名相同,请问内存空间如何分配?_百度...
第一点:一个由 c\/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式 类似于数据结构中的栈。2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由 OS 回收 。注意它与数据结构中的堆是两...

C++ 全局变量和全局静态变量有什么区别?
2. 全局变量、静态全局变量、静态局部变量都是在静态存储区(全局数据区)中分配空间的,而局部变量是在栈上分配空间的。3. 全局变量、静态变量的生命期和程序生命期是一样的,在程序结束之后操作系统会回收空间。变量来源于数学,是计算机语言中能储存计算结果或能表示值抽象概念。变量可以通过变量名访问...

c++中怎么判断数据是存放在栈区,堆区,寄存器区,全局区(静态区),文字...
这是固定的,根据变量类型判断就行:全局变量和静态变量放在全局区 局部变量放在栈区 动态申请的内存在堆区 register变量在寄存器 字符串常量在文字常量区

C 程序中全局变量存储空间在( )分配
1.栈区(stack):由编译器自动分配释放,存放函数参数值,局部变量值等。其操作方式类似于数据结构中栈。2.堆区(heap):一般由程序员分配释放,若程序员不释放,程序结束时可能由OS回收。注意它与数据结构中堆是两回事,链表数据空间必须采用堆存储分配策。3.全局区(静态区)(static):全局变量和...

VC+++ 全局变量的定义
第二,堆栈,这是在函数进入的时候的局部变量的分配区,第三,动态存储区,即程序里通过malloc或者new分配出来的,其中,第一和第二两个区域的数据的分配和销毁是由编译器管理的,第三个区域则是由程序编写者控制的,由程序员决定何时分配及何时销毁,所以,从存储位置的角度来讲,首先,全局变量是存储...

局部变量,局部静态变量,全局变量,全局静态变量分别存放在哪个区?
局部变量: 栈区 局部静态变量:静态区 全局变量: 静态区的常量区 全局静态变量:静态区 内存分四个区:静态区,栈区,堆区,代码区

相似回答