3

メッセージを出力できるように、NSUInteger を文字列にキャストしようとしています。検索すると、stringWithFormat を使用する必要があるようですが、ARC では暗黙のキャストが許可されていないというエラーが表示されます。

問題の行は次のとおりです。

NSString *text = [[NSString stringWithFormat: (@"%li",  NSUInteger)];

助けを借りずにフォーマット指定子を %lu に変更しようとしました。

ありがとう。

4

1 に答える 1

24

おそらく、次のような NSUInteger 型の変数があるでしょう。

NSUInteger myNumber;

次に、次のように文字列に変換できます。

NSString *text = [NSString stringWithFormat:@"%li",  myNumber];

私が今好む解決策はこれです:

NSString *text = [NSString stringWithFormat:@"%@",  @(myNumber)];   

これは、間違った数値フォーマット コードに関するコンパイル警告を回避するのに役立ちます (長い間、私はまだ混乱しています)。

于 2014-05-25T17:03:18.860 に答える