码迷,mamicode.com
首页 > 编程语言 > 详细

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

时间:2017-03-23 20:29:47      阅读:190      评论:0      收藏:0      [点我收藏+]

标签:栈溢出   声明   vps   默认   tar   局部变量   数组声明   大小   函数   

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

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

标签:栈溢出   声明   vps   默认   tar   局部变量   数组声明   大小   函数   

原文地址:http://www.cnblogs.com/JackieWu/p/6606763.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!