如何在 lldb 中创建和使用临时 NSRange?

2024-03-31

NSRange 只是一个 C 结构体。我想在 Xcode 的 lldb 中的断点处创建一个临时的。

专门用于 NSArray 方法objectAtIndex:inRange:

这是行不通的。

(lldb) expr NSRange $tmpRange = (NSRange){0,4}
(lldb) expr $tmpRange
(NSRange) $tmpRange = location=0, length=4
(lldb) expr -o -- [items indexOfObject:item4 inRange:$tmpRange]
error: no matching constructor for initialization of 'NSRange' (aka '_NSRange')
error: 1 errors parsing expression

我的代码有一个名为 NSRange varbadRange在断点处,并在工作中传递该断点。因此:

(lldb) expr -o -- [items indexOfObject:item4 inRange:badRange]
0x7fffffffffffffff
(lldb) expr badRange
(NSRange) $1 = location=0, length=3

到底是怎么回事?

Thanks.


在 OS X 项目中工作时,在调试器中创建 NSRange 工作正常,但不适用于 iOS 项目。它在 iOS 上不起作用的原因是,即使 Foundation 提供了声明该结构的头文件,它也没有公开任何相应的符号。基本上,在 iOS 上,NSRange 只是一个前向声明,我不知道实现的真正符号。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 lldb 中创建和使用临时 NSRange? 的相关文章

随机推荐

  • 如何使用 Observables 而不是 Events 来监听 Angular Ionic 中的关闭事件

    我正在使用 ionic 的内联模式 这是由布尔值触发的 https ionicframework com docs api modal using isopen 但是 当模式被关闭时 布尔值不会自动设置为零 根据 ionic 的文档 开发人
  • viewpager 内的水平滚动视图

    我有一个 2 到 4 页的 viewpager 其中一页以表格形式显示数据 为此 我使用垂直滚动和水平滚动 由于horizo ntalscrollview和viewpager之间的冲突 有时 滚动不起作用 我想在页面向左滚动时滚动页面 当它
  • gulp browserify 捆绑时间太长

    我遇到了一个奇怪的问题 需要你的帮助来弄清楚发生了什么 我已经配置了 gulp 来构建我的测试React js在 ES6 中 我用过browserify设置 CommonJS 环境并babelify以获得更大的 ES6 支持 一切正常 只是
  • 矩阵作为应用函子,不是 Monad

    我遇到examples https stackoverflow com questions 7220436 good examples of not a functor functor applicative monad不是 Monad 的
  • 峰值检测代码

    我想计算实时信号在第一步中是否通过了一些阈值 在第一步中 我想检测真实信号是否低于这些阈值 以便检测信号中的峰值 我的Matlab代码 k 1 t 1 l 1 for i 1 length sm sm my signal if sm i g
  • 如何在Spring Security中动态切换应用程序上下文?

    我在我的 Web 应用程序中使用 Spring security 并使用 Javaconfig 最近 我们还在应用程序中添加了 Spring SAML 身份验证 并在经历了一些障碍后终于使其正常工作 在 的里面WebApplicationI
  • 您使用哪些工具在浏览器中调试 HTML/JS?

    我想收集适用于所有浏览器的最佳调试辅助工具 所以这可能是Firebug https addons mozilla org de firefox addon 1843对于 Firefox 那么你用什么来使用 IE 呢 苹果浏览器 歌剧 歌剧迷
  • C++:深度复制基类指针

    我四处搜索 似乎为了执行此操作 我需要更改我的基类 并想知道这是否是最好的方法 例如 我有一个基类 class Base 然后是一长串派生类 class Derived 1 public Base class Derived 2 publi
  • 仅将指定 div 的英文数字转换为波斯语/阿拉伯语

    我知道这个问题已经在这里回答了很多次 但我仍然没有得到确切的答案 我需要通过一些javascript将英文字母转换为波斯语 阿拉伯语字母 但不是整个页面 而是一个div或者更多 就像只针对特定类别一样 我遇到过这些代码 但不知道哪一个最好用
  • 指定形状宽度会生成错误:指定的尺寸对于当前图表类型无效

    我正在尝试将 Excel 图表另存为图像 通过整个代码 我调用了几个工作簿 查找所有工作表并保存所有图表 以下代码适用于 Excel 2007 和 2010 但由于 4 有可见的水平线和垂直线 如果我改变Round shp Width 4
  • Groupby pandas dataframe 具有相同值的两列

    我想要groupby A 和 B 中具有相同值的两列并制作cumsum基于该值所在的列 值的分组数据框示例 A B ValueA ValueB 0 b a 1 3 1 c a 2 2 2 a b 2 4 现在 如果该值位于 A 列中 则考虑
  • 从 Iron Python 生成 .NET 程序集

    我有一个 Iron Python 脚本 我想运行它 然后让 ipy 解释器输出一个可以在其他计算机上运行的程序集 我怎么做 是否有一个开关可以传递给 ipy exe 使用SharpDevelop 一种方法是使用夏普开发 http www i
  • 通过读取初始 .DBF 字节可以采用哪种标头格式?

    关于 DBF文件的第一个字节以及如何检测所使用的xbase版本 即文件其余部分的格式 我可以编译的最全面的列表是 Byte 0 x xxx x 001 0x 1 not used 0 000 0 010 0x02 FoxBASE 0 000
  • Ember.js - jQuery-masonry + 无限滚动

    我正在尝试在我的 ember 项目中实现无限滚动和砌体工作 砖石 砖块 是带有文字和图像的柱子 目前 我可以在页面初始加载时显示第一页并应用砌体 不过 我仍然需要执行 setTimeout 试图找出如何摆脱它 我还有基本的无限滚动代码 现在
  • 使用 Web 部署发布 ASP.NET MVC2 站点

    我目前使用 Web 部署 http learn iis net page aspx 346 web deploy http learn iis net page aspx 346 web deploy 发布我的 MVC2 应用程序 它曾经工
  • file_get_contents() 修改后的 HTTP 标头返回垃圾 html 输出

    以下代码用于使用 PHP 的 SIMPLETHTMLDOM 解析器提取 html include simple html dom php context stream context create array http gt array m
  • 在SAX解析期间确定根元素

    我正在使用 SAX 来解析 XML 文件 假设我希望我的应用程序only处理带有根元素 animalList 的 XML 文件 如果根节点是其他节点 SAX 解析器应该终止解析 使用 DOM 你可以这样做 Element rootEleme
  • 在 Flutter 中使用 After Effects 文件

    我知道如何导出Rive在 Flutter 应用程序中使用的 Flare 文件 但我怎样才能import Adobe 后遗症文件到 Rive 我知道可以这样做Lottie但我无法弄清楚如何准确地做到这一点 您可以轻松导入 bodymovin
  • 如何使用 Jest 和 vue/test-utils 测试输入文件

    我想使用 Jest 和 vue test utils 测试文件上传器组件 我有这个 describe show progress bar of uploading file gt const wrapper mount FileUpload
  • 如何在 lldb 中创建和使用临时 NSRange?

    NSRange 只是一个 C 结构体 我想在 Xcode 的 lldb 中的断点处创建一个临时的 专门用于 NSArray 方法objectAtIndex inRange 这是行不通的 lldb expr NSRange tmpRange