在XCode调试器中显示NSDecimal值
在使用XCode 5进行调试会话期间,如何显示NSDecimal变量的实际值?我发现了这个问题,但这对我不起作用。输入 {(int)[$ VAR intValue]}
之类的摘要描述只会导致出现消息摘要不可用。我应该补充一点,我的NSDecimals位于数组中( NSDecimal dataPoint [2];
)。
During a debug session with XCode 5, how would I display the actual value of an NSDecimal var? I found this question but that doesn't work for me. Entering a summary description like {(int)[$VAR intValue]}
just results in a message "Summary Unavailable". I should add that my NSDecimals are in an array (NSDecimal dataPoint[2];
).
使用调试控制台通过上下文菜单或使用p dataPoint [0]
打印var描述只是给了我原始的NSDecimal视图:
Using the debug console to either print the var description via the context menu or by using p dataPoint[0]
just gives me the raw NSDecimal view:
Printing description of dataPoint[0]:
(NSDecimal) [0] = {
_exponent = -1
_length = 1
_isNegative = 0
_isCompact = 1
_reserved = 0
_mantissa = {
[0] = 85
[1] = 0
[2] = 42703
[3] = 65236
[4] = 65534
[5] = 65535
[6] = 23752
[7] = 29855
}
}
最简单方法是在调试器中将其转换为 NSDecimalNumber
,即
The easiest way is to turn it into an NSDecimalNumber
in the debugger, i.e.
po [NSDecimalNumber decimalNumberWithDecimal:dataPoint[0]]
这将创建一个新的 NSDecimalNumber
打印出一个漂亮的说明。您问题中的 NSDecimal
是8.5。
This will create a new NSDecimalNumber
which prints a nice description. The NSDecimal
in your questions is 8.5.
(lldb) po [NSDecimalNumber decimalNumberWithDecimal:dataPoint[0]]
8.5
如果要显示数字在变量视图中,其摘要格式为:
If you want to have the number displayed in the Variable View, the Summary Format for it would be:
{[NSDecimalNumber decimalNumberWithDecimal:$VAR]}:s