在一个函数中,我创建了以下char数组。

char key1[500]="";

我在函数中遍历索引“ i”,并通过索引initialIndex(全局索引)复制inputFileArray的值,该值是一个全局变量。

key1[i++]= inputFileArray[initialIndex++];

该语句在我运行时导致错误Segmentation Fault(核心转储)。

顺便说一句,这在我使用Visual Studio c ++编辑器进行编译的另一台机器上运行良好。 当我尝试在虚拟机上的ubuntu 13.10上运行此错误时,出现此错误。 感谢您的回答。

===============>>#1 票数:1

该语句在我运行时导致错误Segmentation Fault(核心转储)。

学习使用调试器(通常是Linux上的GDB)。 您可能要从这里开始。

在调试器下运行程序,并验证i < 500
initialIndex < sizeof(inputFileArray)

这在另一台机器上工作正常

是的,错误通常是这样的:在一台机器上正常工作( 似乎正常)的代码在另一台机器上崩溃。

  ask by user3435894 translate from so

未解决问题?本站智能推荐:

1回复

分段故障(核心已转储)

我正在为学校编写一些模拟简单CPU的代码。 我知道分段错误是什么,但是我找不到我的代码有什么问题。 标头或main没错,我将其包括在内以供参考 这是我的标题: 我的主要: 我的功能:(第一个功能没有问题!) 只有第二个执行位操作的功能有问题 很久很抱歉
4回复

C分段故障(核心已转储)链接列表

我不断收到Segmentation Fault (core dumped)运行时错误,但我不知道为什么。 我的代码: 错误在这里:经过一些调试后, list->head->next = newObj 。 我以为我必须为list-> head-> next分
1回复

矩阵上出现奇怪的分段错误(核心已转储)

所以,我有这部分代码: 它将来自文件的矩阵放入内存。 公开和分配没有给出错误(至少我认为)。 奇怪的是,错误似乎发生在最后两个元素上(通过打印当前行号发现)(在上面的代码位于最后一个元素之前,或者如果我添加一些打印内容,则在最后一个元素之前,这更奇怪),并且仅当矩阵有5行或更多。
1回复

OpenHashing分段错误

首先感谢您花时间阅读并打开它。 我基本上完成了这个代码,我相信一切都近乎完美,除了我得到一个分段错误。 这是一个家庭作业,但我已经做了所有的工作,但我知道我的Free()中有一些东西混淆了,我相信它在我的Delete()函数中。 我通过终端的gdb调试器运行它,我得到了这个:
10回复

为什么它不会违反分段?

据说下面的代码会导致分段违规: 它的编译和运行方式如下: 但没有任何结果。 注意 上面的代码确实会覆盖ret地址等等,如果你真的明白它下面会发生什么。 返回地址将特定为0x41414141 。 重要这需要深刻的堆栈知识
3回复

使用C宏的分段错误

使用稍微修改过的MobileC构建时,我有一个奇怪的问题。 我在宏中遇到分段错误,但是当我将printfs放入代码中时(由于它与C 交错 ,因此无法进行调试),我无法确切知道它发生的位置。 这是代码: 并且Destroy的代码如下: 我没有修改这部分代码( print
1回复

gcc -O分段错误

这是将数据插入二进制特里的代码。 如果我使用基本的gcc main.c -o main进行编译,则此代码将完美工作。 我想使用-O选项来优化查找树,查找特定键所花费的时间。 当我使用-O选项执行main时,会出现段错误。 Gdb给了我以下信息: 所以错误似乎在这里:
2回复

数组和指针:分段错误

我在玩数组和指针,并得到此分段错误。 当我将指针“ p”移动到代码中“ ptr”指针下方时,并且当我注释掉一个printf语句时,它消失了,谁能解释为什么在此代码中出现这种段错误? 您可以在此处编译代码以查看结果: http : //codepad.org/Q7zS8NaC 谢谢
1回复

c由于函数结构中的重复而导致的分段错误

该程序第一次运行良好,但如果要添加另一本书的详细信息,则在输入第一个属性后会出现细分错误
3回复

有意通过argv获取分段错误

我想写一个小程序,通过argv用户输入,得到分段错误。 我是C的新手,但我认为以下代码可以完成这项工作: 我的想法是程序初始化(?)指向特定大小的缓冲区的指针。 如果用户然后输入一个大于缓冲区大小的数字,它将写入未初始化的内存,因此得到一个seg。 故障。 这个推理是否正确?