Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
NetBeans中的C程序——调试器或运行未停止,没有崩溃或错误消息_C_Netbeans - Fatal编程技术网

NetBeans中的C程序——调试器或运行未停止,没有崩溃或错误消息

NetBeans中的C程序——调试器或运行未停止,没有崩溃或错误消息,c,netbeans,C,Netbeans,我在我的C程序中使用NetBeans,当我尝试为三维数组分配内存时,程序就停止了:什么都没有发生,NetBeans不再响应,但没有错误消息 代码如下所示,数字在运行时设置: int ***my_matrix, i; my_matrix = malloc(sizeof(int**)*1); my_matrix[0] = malloc(sizeof(int*)*45169); for(i=0; i < 45169; i++) { my_matrix[0][i] = malloc(size

我在我的C程序中使用NetBeans,当我尝试为三维数组分配内存时,程序就停止了:什么都没有发生,NetBeans不再响应,但没有错误消息

代码如下所示,数字在运行时设置:

int ***my_matrix, i;
my_matrix = malloc(sizeof(int**)*1);
my_matrix[0] = malloc(sizeof(int*)*45169);
for(i=0; i < 45169; i++) {
   my_matrix[0][i] = malloc(sizeof(int)*43604);
}
int***my_矩阵,i;
my_矩阵=malloc(sizeof(int**)*1);
my_矩阵[0]=malloc(sizeof(int*)*45169);
对于(i=0;i<45169;i++){
my_矩阵[0][i]=malloc(sizeof(int)*43604);
}
在for循环之后,不再发生任何事情

这是内存问题吗?我已经在
NetBeans.conf
文件中增加了NetBeans中的堆空间,添加了参数(并重新启动了NetBeans):

-J-Xmx2048m

在netbeans\u default\u选项部分

我不知道该怎么办,也不知道问题出在哪里


我的操作系统是OSX,NetBeans是8.0版

你能在终端上编译吗?可能您得到的是NetBeans中没有报告但终端中会报告的总线错误。使用更小的常量(例如,4而不是45169等等)测试同一代码可能是个好主意。sizeof(int)*43604*45169=sizeof(int)*1878MB。检查malloc的返回值。我已经用较小的常量测试了该程序,它正在工作,因此它必须与它们的大小一致:S。不是逻辑错误。好的,我将尝试在终端中运行。在这种情况下,我是否必须运行make:S,或者只运行main.c文件2048 Mb对于该阵列来说是不够的,因为存在内存块限制。尽量增加堆空间(大约是我预期的1.5倍)。