これは私が取得している場所からの私のコードですSIGABRT error
p3=@"0123456789";
[password appendFormat: @"%C", [p3 characterAtIndex: arc4random() % [p3 length]]];
これを解決する方法
これは私が取得している場所からの私のコードですSIGABRT error
p3=@"0123456789";
[password appendFormat: @"%C", [p3 characterAtIndex: arc4random() % [p3 length]]];
これを解決する方法
これを試して :
NSString *p3=@"0123456789";
int t = arc4random() % [p3 length];
NSLog(@"%@",[p3 substringWithRange:NSMakeRange(t, 1)]);
NSMutableString * password = [[NSMutableString alloc] init];
[password appendFormat:[NSString stringWithFormat:@"%@",[p3 substringWithRange:NSMakeRange(t, 1)]]];
p3=@"0123456789";
[password appendFormat: @"%C", [p3 characterAtIndex: arc4random() % ([p3 length]-1])];
0から始まるインデックスの配列の範囲を超えているようです。 -1を追加してください。
乱数が 0 の場合、インデックスは文字列の長さになり、制限を超えています。したがって、次のように1つ少ない長さを使用しますindex = arc4random() % ([str length]-1;