2010年9月13日 星期一

iPhone 使用NSLog來顯示各種型態資料

我在xcode的開發過程中,
除了使用build and debug mode來逐一檢查參數的值
有時候也需要在build and run mode底下留一些訊息,
這時候一定會用到NSLog.
可是使用上若是沒注意資料型態,胡亂指定可是會導致crash的,
因為邪惡的compiler在編譯過程中根本不會有錯誤阿!

所以這邊筆記一下常用的資料型態取法
NSLog(@"%@",myobj);

%@         object
%d, %i     signed int
%u         unsigned int
%f         float/double

%x, %X    hexadecimal int
%o         octal int
%zu        size_t
%p         pointer
%e         float/double (in scientific notation)
%g         float/double (as %f or %e, depending on value)
%s         C string (bytes)
%S         C string (unichar)
%.*s       Pascal string 
(requires two arguments, pass pstr[0] as the first, 
pstr+1 as the second)

%c         character
%C         unichar

%lld       long long
%llu       unsigned long long
%Lf        long double

資料來源: cocoadev
               cocoachina

這篇出自cocoachina的精華文章更清楚喔

2010.12.08  補充顯示boolean參數方法
1
NSLog(@"Bool object is: %@ ",(boolobj ? @"YES" : @"NO"));

2011.10.21 補充顯示CGPoint的方法
1
NSLog(@"The point is: %@ ",NSStringFromCGPoint(point));

沒有留言:

張貼留言

內容回應