0

arc4sinの出力を取得して、ラベルに入れようとしています。

(編集:これがあまりにも無関係な場合は、これを無視してサンプルコードを投稿することができます。)

私はもう試した:

// Implement viewDidLoad to do additional setup after loading the view, typically from a nib.
- (void)viewDidLoad {
    [super viewDidLoad];
    NSString *number =  [[NSString alloc] stringWithFormat: @"%@", arc4random() % 9];
    label.text = number;
}

「ラベル」用のIBOutletを作成して接続しました。ここで何が問題になっていますか?

4

1 に答える 1

1

Cocoa形式の文字列で%@は、はObjective-Cオブジェクトを示しますが、int、float、long、shortのすべてがそうではありません。これらは単なるCデータ型であり、とまったく同じ独自の形式を使用しますprintf()

マンページによると、arc4random()はとして定義されているu_int32_t arc4random(void);ため、%uフォーマット指定子(符号なし整数)を使用する必要があります。

編集:これを指摘してくれたTillに感謝します:-initWithFormat:呼び出している場合-alloc-stringWithFormat:、NSStringのクラスメソッドです。

于 2010-03-16T05:49:32.197 に答える