c++ - 在堆栈上分配大缓冲区

标签 c++ c linux memory

在堆栈中分配大缓冲区只是一种“糟糕的方式”吗(如果堆栈有足够的容量)?我的意思是在 Linux 系统中分配 300-500 KB 的对象和 8 MB 的堆栈。或者它可能会导致任何错误? 另外,有没有关于如何使用堆栈内存的指南?

最佳答案

关于堆栈分配变量的大小没有硬性规定。

作为一般规则,我不喜欢任何大于 10KB 的堆栈分配。这样用完堆栈空间就不太可能成为问题。任何比这更大的东西都应该动态分配,然后在不再需要时释放。

关于c++ - 在堆栈上分配大缓冲区,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70021859/

相关文章:

linux - vim:如何在 vim 可视模式下复制一个单词,但在可视 block 模式下粘贴它?

定义和声明之间的 C++ 说明符

c++ - "Expected initializer before ' : ' token" with range-based for

c - max(a,b) 是否在 stdlib.h 中定义?

linux - 更改 ssl 证书的代理背后的 Docker

linux - 错误修正什么时候出现在 ubuntu 存储库中?

c++ - 使用 QtCreator 在 C++ 中调试动态加载的库

c++ - 如何搜索和打印字符串中的特定部分?

python - 如何为 Window 10 Maya 2017 python 编译 python c 扩展?

c - 无符号和有符号数据比较及其在内存中的表示