无法分配内存

时间:2011-12-13 13:00:25

标签: c memory malloc

我无法使用以下代码分配内存:

int *h_VC = (int *)malloc(sizeof(int)*SIZE); //SIZE is 19200
if(h_VC==NULL)
{
 printf("Memory Not avaialble");
}

我的代码在while循环中使用上面的块并运行了几次。 我有8GB内存。我在运行代码的同时监视可用内存 内存分配失败,虽然我剩下3GB的可用内存 可能是什么问题?

2 个答案:

答案 0 :(得分:5)

任何事情都可能是问题所在。将printf替换为

perror("");

获得提示。

答案 1 :(得分:0)

我使用Visual Studio作为编译器。将程序编译为x64解决了这个问题 感谢Alex的评论。