動作しないという問題がStringWithFormat
あります。デバッガーは、返された文字列がNSString
(nullではない)と言っているため、想定された文字列を使用した呼び出しはNSString
メソッドセレクターと一致せず、アプリがクラッシュします。
XCode 4.5 iOS 6設定でテストしています(古いプロジェクト、サブプロジェクトなし)。
NSString
このコードは、 :ではないものを返します。
[NSString stringWithFormat:@"\nTest to %@ (%@)\n", target, ipString]
フォーマット文字列の最初の文字としてスペースを挿入すると、結果はにNSString
なります。つまり、次のように機能します。
[NSString stringWithFormat:@"\nTest to %@ (%@)\n", target, ipString]
このコードブロックも機能しません。ではないものを返しますNSString
。私はここで何が間違っているのですか?
int TTL = 1;
NSString *ttl = [NSString stringWithFormat:@" \n# %d", TTL] ;
TTL++;
[self textToParent: ttl]; // Program crashes here. Debugger show ttl not NSString.
TTL--;
エラーメッセージはttl = (__NSCFString *) 0xwhatever @<variable is not NSString>