在C / C ++中对大数组大小运行时错误

这个问题在这里已经有了答案:

  • 大数组大小的分段错误5个答案

  • 在C ++中,当你这样做时:

    unsigned long long a[100000];
    

    它从堆栈分配内存。 堆栈内存有限,所以你不能做太大的分配。

    当你这样做时:

    unsigned long long* a = new unsigned long long[1000000];
    

    它从堆中分配内存。 堆分配可能很大。

    有关堆栈和堆内存的更多信息,请参阅此堆栈溢出文章。

    链接地址: http://www.djcxy.com/p/79801.html

    上一篇: Run time error on large array sizes in C/C++

    下一篇: Windows heap manager and heap segments