【问题标题】:Playground execution aborted - EXC_BAD_INSTRUCTIONPlayground 执行中止 - EXC_BAD_INSTRUCTION
【发布时间】:2017-03-26 11:05:44
【问题描述】:

我刚刚开始 IOS 开发,我正在尝试对字符串进行一些操作

var str = "Hello, playground"
let newTypeString = NSString(string: str) // here is the error
//this is NSString that i used to create newTypeString NSString(string: String) 

这是我遇到的错误:

Playground 执行中止:错误:执行被中断, 原因:EXC_BAD_INSTRUCTION(代码=EXC_I386_INVOP,子代码=0x0)

还有其他人遇到过这个错误吗?

【问题讨论】:

  • 该代码在 Playground 中运行没有问题。请用你真正的问题更新问题,否则问题和答案对未来的读者都是无用的。

标签: ios swift string nsstring


【解决方案1】:

当你说:

NSString(string: String)

您正在尝试使用名为StringString 变量创建NSString 实例。但是String,是一种类型,而不是变量。所以你的上一行有效,因为你传递了一个变量:

let newTypeString = NSString(string: str)

但是不传递实际变量而是传递类型的方法失败了。这有意义吗?

更新: 看来我误解了代码,因为它最初是格式化的。 OP 试图运行的唯一代码是:

var str = "Hello, playground"
let newTypeString = NSString(string: str)

根据提供的信息,即使代码正确,Playgrounds 也会在第二行崩溃。我建议 OP 尝试重新启动 Xcode 以查看是否可以解决问题,因为 Xcode 有时会有点脾气暴躁 :) 显然,这解决了问题。

【讨论】:

  • let newTypeString = NSString(string: str) 行执行良好,我认为没有问题。所以,不知道为什么它会为你崩溃。也许您可能想尝试重新启动 Xcode,看看这是否是您最后的某种 Xcode 问题?
  • @Fahim 这与Xcode 完全无关,这与他拥有的其他代码有关。发布完整的崩溃日志可能会有所帮助...
  • @Mr.Xcoder 因为他说崩溃发生在给定的行并且他只提供了两行,所以我不确定还有什么想法。除非他在操场上有更多的代码。他没有说明是这种情况,尽管我想可能是这样。
  • @DionizB 乐于助人:)
  • NSString(string: String) 会导致编译器错误,而不是 EXC_BAD_INSTRUCTION。所以我不清楚这是如何回答这个问题的。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-03-29
  • 2017-02-25
  • 1970-01-01
  • 2017-08-20
相关资源
最近更新 更多