2010-06-28 57 views
0
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', 
    reason: '*** -[NSPlaceholderString initWithUTF8String:]: NULL cString' 

回答

2

因此,這意味着你在在運行時獲得這個錯誤這樣做是:

NSString *myString = [NSString stringWithUTF8String: NULL]; 

因此就使用你這個問題,省略掉回溯,找出你這樣做,並正確初始化字符數組。

0

cString是NSString類的一種方法。
所以這個錯誤意味着該方法在一個無NSString上被調用。它將返回nil,並且NSPlaceholderString的initWithUTF8String方法將引發異常。

嘗試在某些點上使用NSLog()來查看nil字符串的來源。這可能是這樣的事情:

NSString * str; 

if(someTest) 
{ 
    str = @"foo" 
} 
/* No else statement - so uninitialized string */ 
+0

NSLog()?哇,老派。靜態分析器可以捕捉到這種錯誤(不是它實際上可能是提問者崩潰的原因)。 – 2010-06-29 14:42:04