objective-c - Objective-C 中的段错误是什么?

标签 objective-c segmentation-fault archive

我编写了一个小型 Objective-C 程序来归档对象。该对象是一个 NSDictionary。编译过程中没有出现问题。但是当它被调用时,它在终端中显示一条消息“段错误”,并且没有创建存档 XML 文件。这个问题是由 writeToFile 方法引起的,因为在我注释掉它之后就没有错误了(当然也没有存档)。这个错误信息是什么意思?又该如何解决呢?

我刚刚找到了问题的原因。我的程序基于书中的示例,并且存在打印错误,因此字典对象从未实际初始化。抱歉,我在提问之前没有彻底检查这个问题。

最佳答案

段错误是由于尝试取消引用坏指针而引起的。您传递给 writeToFile: 的文件实例可能为零。您需要检查返回码是否成功,并检查您的指针是否全部有效。

鉴于当您注释掉该行时它不会崩溃,您只需确保该调用的所有参数都有效,您就会发现错误。

更多阅读内容:

关于objective-c - Objective-C 中的段错误是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11612952/

相关文章:

iphone - 在 iPhone App 中集成 ShareKit 2.0

ios - Swift:关于协议(protocol)和委托(delegate)模式

c - 如何读取 C 中以逗号分隔的 .txt 文件?

c# - 在 C# 中从 Sitecore 访问回收站

database - 数据归档解决方案

ios - 有没有办法在 AFNetworking 后台线程完成之前阻止 iOS 中的主线程?

objective-c - 我怎样才能在 Objective-C 中实现这一点?为没有 API 的网络应用程序开发应用程序,如何让用户登录?

c++ - 全局变量段错误

c - 在 C 中填充动态二维数组时出现段错误

c - 为什么我收到段错误 : 11