中国服务器网

服务器问题集锦,包括 Linux(Ubuntu, Centos,Debian等)和Windows Server服务器

如何克服与Visual Studio的堆栈大小问题(大数组运行C代码)

我正在使用Visual Studio 13第一次编译c代码。 代码完全可以运行在64 * 64(在我的程序中有几个数组)的2d数组,但是如果我将数组大小增加到128 * 128,它不会运行(但编译正确)。 相反,它会提示“.exe已停止工作”。 我的机器有4GB内存和相同的程序运行128 * 128arrays,如果我从Linux运行的代码。 让我提供一些更多的细节:我已经在同一台机器上使用Intel C Compiler(非商业版本)的linux运行相同的代码。 但由于一些问题,我现在被限制在Windows环境下工作。 我search并安装了两个c编译器(1)Visual Studio 13和(2)Borland C.两者都能很好地工作在一个小arrays上。 但是,当我增加数组大小Visual Studio给消息“.exe已经停止工作”。 我使用“开发人员命令提示符VS 13”中的“cl”来编译程序。 我觉得问题是堆栈大小。 在链接的详细说明 (如下所示)中,我看到了linux环境中使用的命令“ulimit”来增加堆栈大小。 我记得几年前使用它。 我觉得我们已经接近解决scheme,但是由于我没有执行dumpbin /headers executable_file或editbin /STACK:size ,所以我的Windows(和VS 2013)问题仍然存在。 其实我觉得我不知道如何去执行它们。 我尝试从“开发人员命令提示符VS 13”以及使用运行(Windows开始底部 – >search(运行) – >运行(支持))执行它们。 如果可能,我请求你提供更多的细节。 我search,发现这个网站,并认为在这里可以find解决scheme。 请帮忙。 我想从Windows运行使用Visual Studio 13。