gpt4 book ai didi

xcode - 我可以在 iOS 中的代码中创建一个断点,例如 VC++ 中的 `__asm{int 3}`,并在它被击中后继续执行吗?

转载 作者:技术小花猫 更新时间:2023-10-29 10:07:35 26 4
gpt4 key购买 nike

我正在尝试将 asm{int 3}(或类似的)的等价物放入我的 iPhone 程序中。我的目...),并让我能够继续执行(这就是为什么我对 assert 不满意)。

(我在其他系统上已经习惯了这两种行为,我想在 iOS 上重现它们。)

到目前为止,我最好的尝试是:

asm volatile("bkpt 1");

这会在有问题的行上停止 Xcode,但是当我尝试继续使用 Cmd+Alt+P 时,Xcode 似乎再次运行 BKPT。如果我使用 Shift+Cmd+O,我会得到这个:

Watchdog has expired.  Remote device was disconnected?  Debugging session terminated.

(不用说,远程设备仍然处于连接状态。)

我在 iOS、Mac、ARM、gdb 或 gcc 的 asm 方面没有太多经验。所以我已经难住了。有没有办法让 iOS 和 Xcode 做我想做的事?

(我不知道这是否有所不同,但从指令大小来看我的程序是 ARM 代码。)

最佳答案

尝试:

__builtin_trap();

适用于 Mac 和 iOS,您可以将绿色小光标拖到下一行继续运行。

关于xcode - 我可以在 iOS 中的代码中创建一个断点,例如 VC++ 中的 `__asm{int 3}`,并在它被击中后继续执行吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3644465/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com