首页 > 代码库 > 定义局部变量数组大小过大报错

定义局部变量数组大小过大报错

  如果定义的局部变量数组大小过大,编译器会报错“栈溢出”。
数组声明在函数内部,属于局部变量,存放在了栈上,如果数组过大比如a[1000000]。那数组占用的内存大小为:1000000*4byte约等于4M。而栈的默认内存空间为1M左右,所以会导致内存溢出解决这个问题。
解决这个问题方法为:可以将数组声明在全局存储区或堆上即可
方法一:申明为全局变
方法二:存放在堆上

定义局部变量数组大小过大报错