小编Dal*_*pus的帖子

在Windows或Visual Studio中获取大块内存有什么特别之处吗?

这是我正在打电话.

table  = (int *) malloc(sizeof(int) * (C+1) * (N+1));
Run Code Online (Sandbox Code Playgroud)

C+1*N+1 结果是657,562,500

但是这个调用NULL在Windows上执行时返回给我(表示它无法分配该空间量).
(它使用较小的数字可以正常工作,并且在我的Linux机器上使用比这更大的数字也能正常工作)

在此之前,该计划并没有真正做多少.

当我查看任务管理器时,它显示28.1 GB的可用内存.

所以我想知道,我可以在Visual Studio中设置一些像编译器标志或者什么东西来让我像这样抓住大块内存吗?

如果我的数学是正确的,我相信我要求大约1.22GB.

感谢任何帮助

编辑:显然我需要将其作为64位应用程序运行.任何人都知道如何在Visual Studio中将ac项目更改为64位?在平台Win32下的配置参数是唯一的选择.

c visual-studio-2012

4
推荐指数
1
解决办法
52
查看次数

标签 统计

c ×1

visual-studio-2012 ×1