gpt4 book ai didi

c - 在ubuntu中执行C代码时出现段错误

转载 作者:太空狗 更新时间:2023-10-29 11:39:23 28 4
gpt4 key购买 nike

当我编译c 文件时,gcc 没有返回任何错误,但在运行时出现段错误。调试器显示错误发生在这部分代码中:

      int q=size[current];
int *temp;
temp = malloc ( sizeof(int)*q);
for(i=0;i<size[current];i++)
temp[i]=arr[current][i];

arr 已定义:

      int arr[20][200];

当前默认为 0。

我正在尝试将二维数组 (arr) 中的数组内容复制到临时数组,我试过不使用 malloc 但仍然是同样的问题。

ps:程序在windows下运行正常。

最佳答案

您显示的代码没有任何问题(我可以看到)。

您应该采取的第一步是在 Valgrind 下运行您的程序,并修复它报告的任何错误。

如果 Valgrind 报告您不理解的错误,请使用 Valgrind 输出更新您的问题。

如果 Valgrind 没有报告任何内容,请在 GDB 下运行您的程序,打印 icurrentsize[current] 等的值. 并使用 GDB session 更新您的问题。

关于c - 在ubuntu中执行C代码时出现段错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8680802/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com