jjzjj

c++ - 在 xcode C++ (lldb) 中查看动态数组的内容

如何在xcode调试器(C++)中查看动态创建的数组的内容?intmain(intargc,constchar*argv[]){int*v;intsize;cout>size;v=newint[size];for(inti=0;i>v[size];}//seearraycontentsreturn0;}我想查看v的内容 最佳答案 我们没有在表达式解析器中添加一些语法,例如gdb"@"语法,因为我们希望使语言语法尽可能接近C/ObjC/C++。相反,由于您要执行的任务是“读取一些内存作为T类型的N个元素的数组”,您可以使用:(lldb

c++ - LLDB C++调试

我是LLDB的新手,我在代码中使用各种std::vector,但是当我尝试打印vector的值或查询vector的大小时类似于expr'(int)myVector[0]'或expr'(int)myVector.size()'调试器打印与值无关的值我知道vector中有。当我学习使用命令行和LLDB进行调试时,我确定我在这里遗漏了一些东西,任何人都可以发现我的错误或提供一些建议吗?编辑忘了说我在OSXMavericks下安装了最新的命令行工具。 最佳答案 我自己找到了答案。显然像[]这样的重载运算符是不允许的,因为它们是内联的,see

ios - 查找 __lldb_unnamed_function4866$$ProjectName 的源代码

我的iOS程序中出现EXC_BAD_ACCESS,我怀疑原因出在我的一个匿名block中,但其中有很多,我需要稍微缩小候选列表的范围。堆栈跟踪将当前帧显示为__lldb_unnamed_function4866$$ProjectName。我看不到任何行号或源文件名。也没有可见的局部变量。调试器显示机器代码指令。这是在后台事件队列上运行的,因此堆栈上的其他任何地方都没有我的代码。我如何着手找出这是什么功能? 最佳答案 我遇到过类似的情况,虽然我(目前)无法帮助您解决问题,但我想我认识一个可以做到的人。查看http://www.real

ios - livereload 导致应用程序在启动画面上停止(连续加载轮)-Ionic

更新它在没有livereload的情况下也停止工作-所以现在它不是由livereload引起的-但我仍然需要帮助解决这个问题iOS11更新后(我认为这是原因,因为之前一切都很好),我无法使用livereload。如果我尝试使用livereload,它会卡在初始屏幕上-加载轮正在旋转。以下是有关我的ionic环境的一些信息:Eamons-MBP:myappeamonwhite$ionicinfoclipackages:(/Users/eamonwhite/ionicmane/myApp/node_modules)@ionic/cli-utils:1.12.0ionic(IonicCLI)

iOS:LLDB 多行断点命令无法按预期工作

我想在这里做一些有点花哨的事情,但文档表明这应该是可能的。也许LLDB仍然太新,但我遇到了很多调试器崩溃/死锁,即使这种情况没有发生,它似乎也没有像我预期的那样工作。我正在尝试将所有选择器调用放在一起调试包装器,以提取特定代码块中的消息调用图。(如果你真的想知道,我可以解释为什么,但这与调试器问题并不真正相关。)我从我想开始跟踪事物的行上的Xcode断点开始(奖励积分,这是在辅助线程上发生的,但在你问之前,不,任何其他线程上没有任何访问此对象或其属性子图中的任何内容):[myObjectstartProcessing];断点触发,我运行“bt”,只是为了提取:*thread#5:tid

objective-c - XCode 在断点处多次停止

带有lldb调试器的XCode4.5.2在各个地方调试时,XCode喜欢在某些断点处多次停止。有些只有2或3次,有些则超过10次。另外,在单步执行代码时,当前行标记经常会跳上2或3行,并出现多次执行相同代码的情况。它实际上并没有执行多次,因为我已经用NSLog语句对此进行了测试。 最佳答案 确保您处于调试方案中或仔细检查优化器标志是否已在build设置中关闭。 关于objective-c-XCode在断点处多次停止,我们在StackOverflow上找到一个类似的问题:

python - 什么时候调用 __lldb_init_module?

我正在关注WWDCsession412-在Xcode中调试。那里有一个关于为您自己的类创建自定义LLDB摘要的演示。我根本无法显示摘要。通过在Python脚本中插入打印调用,我已经能够确定:正在导入脚本文件__lldb_init_module从未被调用知道什么可以阻止__lldb_init_module被调用吗?是否有特定时间需要导入脚本? 最佳答案 对我来说,这是通过添加commandscriptimport/path/to/CustomSummaries.py到~/.lldbinit文件并重新启动Xcode,或者在“main”中

ios - XCode 不会在从 LLDB 调用的方法中的断点处停止

XCode7.2.1iPadRetinaiOS9.2模拟器我在XCode项目的特定类中设置了几个断点。我在下面讨论的所有内容都发生在这个类文件中。我通过单击装订线在-(int16_t)areaNbr上设置断点,并且不在其上设置任何条件或任何内容。我通过从LLDB提示符运行breakpointlist确认它们就LLDB而言存在。项目方案设置为调试构建,而非发布。我在模拟器中运行该项目,并在一个断点处停止采用与所讨论的方法不同的方法,此时我想转到LLDB提示并调用po[selfareaNbr]并单步执行areaNbr。请注意,因为这可能非常相关,我在项目本身中没有调用的代码-(int16_

ios - 为什么 Xcode 中的控制台不能使用点符号打印我的对象的属性?

我有一个UIButton,我已经设置了accessibilityLabel。为什么当我尝试使用圆点表示法打印辅助功能标签属性时,控制台找不到它?(lldb)poself.closeButton.accessibilityLabelerror:property'accessibilityLabel'notfoundonobjectoftype'UIButton*'error:1errorsparsingexpression(lldb)po[self.closeButtonaccessibilityLabel]topsecretlabel 最佳答案

ios - 在 iPhone ARM64 调用约定中,寄存器 $x1 中的内容是什么?

我很难理解AppleARM64FunctionCallingConventions文档和ARMProcedureCallStandard.调用函数时,我了解到$r0是self,而$r2似乎是第一个函数参数。$x1中有什么?堆栈指针是否指向超过四个的第一个参数? 最佳答案 您想阅读AAPCS64的“基本过程调用标准”一章的“子例程调用”部分;他们的寄存器命名约定使用“r0..r30”,而lldb使用“x0..x30”。x1是第二个参数寄存器。x0是第一个。arm64iOSABI与AAPCS64的最大区别在于可变参数函数(printf等