java - 在C++中,静态变量、动态变量和局部变量存储在哪里?在 C 和 Java 中怎么样?

标签 java c++ c

<分区>

在C++中,静态变量、动态变量和局部变量存放在哪里?在 C 和 Java 中怎么样?

最佳答案

如果您正在编译 C/C++ 以创建 Windows 可执行文件(或者可能用于任何 x86 系统),那么静态和全局变量通常存储在称为数据段的内存段中。该内存通常还分为已初始化的变量和未在其定义中由程序初始化的变量。

在函数内部定义的局部变量与函数的返回地址一起分配在程序的运行堆栈上。

我假设您所说的“动态”是指使用 newmalloc 分配的东西。这些通常存储在另一个称为“堆”的内存区域(与“堆”数据结构无关)

所有这些细节都高度依赖于平台,通常,作为程序员,您甚至不需要知道它们。

关于java - 在C++中,静态变量、动态变量和局部变量存储在哪里?在 C 和 Java 中怎么样?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2465512/

相关文章:

java - 在 Mac OS 10.6 上为 JavaCL 开发 OpenCL 内核的可靠设置是什么?

c++ - 什么是样本格式?

c++ - 在图像上放置图像

c - 链接外部静态结构数组无法正常工作

java - Java 8 并行流是否对序列使用相同的线程

java - 如何从war打包的jar中读取PNG

java - 从android中listAdapter之外的viewList访问 View 项

c++ - en_US.UTF-8 区域设置的 Windows 等效项是什么?

c - C 中枚举类型变量的用途

c - Jiffies - 如何计算经过的秒数?