c中数组的最大大小

nom*_*ons 1 c arrays

为什么最大数组与本地声明和全局声明不同?

我在一些博客中读到,在本地声明的情况下,我们可以声明的最大数组大小为10 ^ 6,在全局声明的情况下,在10 ^ 7到2*10 ^ 8之间.这是什么原因?

UmN*_*obe 5

这些数字通常并不意味着它们,它们特定于OS +机器.但是本地声明和全局声明是在虚拟内存的不同区域完成的.局部变量位于堆栈上,通常小于堆(用于动态分配的全局变量)