+ -
当前位置:首页 → 问答吧 → 段错误请教

段错误请教

时间:2010-07-30

来源:互联网

#include <stdio.h>

int main() {
        int a[60][250][1000];
        int i,j,k;
        int sum = 0;
        return 0;
}
很简单的代码,但是运行时报段错误
把 int sum = 0;这句话放到上面就没问题了,如下:
#include <stdio.h>

int main() {
        int sum = 0;
        int a[60][250][1000];
        int i,j,k;
        return 0;
}
我不理解是什么问题所致,是不是因为数组占用的空间过大?
谢谢了

作者: tianhailong   发布时间: 2010-07-30

应该是数组定义太大了

作者: hellioncu   发布时间: 2010-07-30

栈被破坏了。。

作者: rain_fish   发布时间: 2010-07-30

没发现有问题.1M多的数组也不大啊.

作者: zhangsuozhu   发布时间: 2010-07-30

回复 zhangsuozhu


    是60M的数组,
    那么请问多大的数组会破坏栈呢?

作者: tianhailong   发布时间: 2010-07-30

15M不到的数组,用户栈能放下吧......

作者: liwangli1983   发布时间: 2010-07-30

ulimit -s
看看你的系统支持多少

作者: rain_fish   发布时间: 2010-07-30

楼主可以去看看这个帖子
http://linux.chinaunix.net/bbs/thread-988294-1-1.html

作者: star1983653   发布时间: 2010-07-30

回复 rain_fish


谢谢了,看到了,系统支持的是10240K,呵呵。

作者: tianhailong   发布时间: 2010-07-30



QUOTE:
回复  rain_fish


谢谢了,看到了,系统支持的是10240K,呵呵。
tianhailong 发表于 2010-07-30 17:27




    客气了。。

作者: rain_fish   发布时间: 2010-07-30

相关阅读 更多