这是我的代码,我来自SIGABRT error
p3=@"0123456789";
[password appendFormat: @"%C", [p3 characterAtIndex: arc4random() % [p3 length]]];
如何解决此问题
答案 0 :(得分:0)
p3=@"0123456789";
[password appendFormat: @"%C", [p3 characterAtIndex: arc4random() % ([p3 length]-1])];
你似乎超出了索引数组的范围,从0开始.Ad -1。
答案 1 :(得分:0)
当随机数为0时,索引将是字符串的长度,超出限制。所以jst使用的长度少于index = arc4random() % ([str length]-1;
答案 2 :(得分:0)
试试这个:
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)]]];