c - C中指针和全局变量的位置

标签 c memory-management

指针全局变量存储在C中的什么地方?它们是保存在内存、堆还是栈中?

最佳答案

全局变量可以位于多个位置,具体取决于它们的设置方式 - 例如,const 全局变量可能位于可执行文件的只读部分。 “正常”全局变量位于可执行文件的读写部分。它们根本不在堆上或堆栈上。指针只是一种变量,因此它们可以位于您希望它们位于的任何位置(如果您 malloc() 则在堆上,如果它们是局部变量则在堆栈上,或者在数据中如果它们是全局性的部分)。

关于c - C中指针和全局变量的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3113668/

相关文章:

c - 如何从文本文件中选择随机问题?

c++ - 使用事件处理程序

c - 什么决定了可以分配多少内存?

c++ - C++ 对象创建时的内存分配

c - C程序输出错误

c - libfaketime 和 Mac OS,LD_PRELOAD

c - Vugen - 在 mkdir 路径中创建动态值

类文件中的 C++ 对象实例化

memory-management - 了解 Instruments 和 All Heap & Anonymous VM

c++ - VirtualQueryEx 与 ReadProcessMemory 的关系