を使用して乱数文字列を生成しています
int rNumber = rand() %100000000 + 1;
_certificateReferenceField.text = [[NSString alloc] initWithFormat: @"C/R %d", rNumber];
アプリが最初に起動されたとき、またはバックグラウンドにあることから来たとき、アプリは常に最初に同じ番号を選択しc/R16808
ますか?もう一度押すと問題ありません。すべて正常に動作します。
を使用して乱数文字列を生成しています
int rNumber = rand() %100000000 + 1;
_certificateReferenceField.text = [[NSString alloc] initWithFormat: @"C/R %d", rNumber];
アプリが最初に起動されたとき、またはバックグラウンドにあることから来たとき、アプリは常に最初に同じ番号を選択しc/R16808
ますか?もう一度押すと問題ありません。すべて正常に動作します。
rand()は良い乱数ジェネレータではありません。これを実行してください
NSInteger rNumber = arc4random() % 100000000 + 1;
を使用して乱数ジェネレーターをシードする必要がありますsrand
。一般的な使用法は次のとおりです。
srand(time(NULL));
を呼び出す前にこれを呼び出しますrand
。
使用できます
srandom(time(NULL));
乱数の生成をランダム化します。
次に、を使用random()
して乱数を生成します。