为什么这在 XCode 调试窗口“po [myNsDateComponent weekday]”中不起作用?

具体例子:

(gdb) po weEndDayTime
<NSDateComponents: 0x4f241d0>

(gdb) po [weEndDayTime weekday]
0x2 does not appear to point to a valid object.

最佳答案

-weekdayNSDateComponents 方法返回一个 int 。但是 po 不适用于原始值类型,只能用于指针类型。

在本例中,它将该方法的整数输出 0x2 转换为一个指针,并查找指针地址为 0x2 的对象。它找不到任何东西,所以它给出了这个信息。

使用 p 代替,必要时使用适当的类型转换:

(gdb) p (int) [weEndDayTime weekday]
$1 = 2

关于iphone - 为什么这在 XCode 调试窗口中不起作用 "po [myNsDateComponent weekday]",我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5931016/

10-13 03:52