C++ - 在函数内部声明数组

标签 c++ memory

如果我在函数内声明一个数组,是否会在离开函数时释放内存?

然而,我不会这么想,当我在函数内声明数组时,将指向数组的指针写入全局变量,然后尝试(在函数外)取消引用指向数组中元素的指针,我遇到内存访问冲突。如果我在函数内使用相同的代码,我不会遇到内存访问冲突。

如有澄清,我们将不胜感激。

提前致谢。

最佳答案

所有自动变量在函数退出后被移除,包括数组。这通常是所有非静态局部变量。

关于C++ - 在函数内部声明数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9121617/

相关文章:

c++ - cuda 共享内存 - 结果不一致

c++ - <character*> 仅使用 cin 附加最后一个输入

c++ - 如何使用指针用随机数填充二维数组

C++多态和重载?

c++ - C/C++ 转换为程序集,低级内存行为 : how is it done?

c - 每行代码分配多少内存?

c - 我如何知道我的 mmaped 分配的范围?

c++ - 与 Makefile 中的变量扩展混淆

c++ - 智能指针的计数器递减如何工作?

c - numactl -- 硬件显示不正确的信息