Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/72.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
为什么我的代码在VisualStudio中工作得很好,但在gcc编译器上给了我一个分段错误_C - Fatal编程技术网

为什么我的代码在VisualStudio中工作得很好,但在gcc编译器上给了我一个分段错误

为什么我的代码在VisualStudio中工作得很好,但在gcc编译器上给了我一个分段错误,c,C,我使用VisualStudio为一个项目编写代码,一切都很顺利。当我试图在gcc编译器上编译它时,它给了我一个分段错误 你能帮我找出是不是发生了这种情况,或者至少给我一个提示来找出是不是发生了这种错误 因为我不能在这里发布非常大的代码,如果您感兴趣,这里有一个链接: pastebin.com/2kdl 编辑:我知道这是很难理解的代码,但请原谅我,我是一个乞丐 编辑:我猜问题一定是在210行之后,对于初学者来说,这 moves[i] = (int**)malloc(sizeof(int)*N)

我使用VisualStudio为一个项目编写代码,一切都很顺利。当我试图在gcc编译器上编译它时,它给了我一个分段错误

你能帮我找出是不是发生了这种情况,或者至少给我一个提示来找出是不是发生了这种错误

因为我不能在这里发布非常大的代码,如果您感兴趣,这里有一个链接:
pastebin.com/2kdl

编辑:我知道这是很难理解的代码,但请原谅我,我是一个乞丐 编辑:我猜问题一定是在210行之后,对于初学者来说,这

  moves[i] = (int**)malloc(sizeof(int)*N);
应该是

  moves[i] = (int**)malloc(sizeof(int*)*N);
或者更好,因为不太容易出错

  moves[i] = (int**)malloc(N * sizeof *(moves[i]));
如果它真的是C(而不是C++),只需:

  moves[i] = malloc(N * sizeof *(moves[i]));

这是代码上未定义行为的标志,例如访问超出界限的内存或修改字符串文本。但我不会去其他网站阅读你的代码。如果代码太大,那么将代码压缩到较小的大小并发布一篇文章。现在真的是阅读的时候了。还请学习如何创建一个。最后,请检查和。哦,天哪……真是个愚蠢的错误,非常感谢你,我不知道为什么我没有从报纸上看到这个错误