//
// CCRandom.h
// CCFC
//
//
#import <Foundation/Foundation.h>
@interface CCRandom : NSObject
{
}
+ (long)generateRandomNum;
+ (NSString *)generateRandomStringByLen:(int)len;
@end
//
// CCRandom.m
// CCFC
//
//
#import "CCRandom.h"
#import <stdlib.h>
#import <mach/mach_time.h>
#import "CCLog.h"
@implementation CCRandom
// it uses a slightly more compicated argorithm than common random
+ (long)generateRandomNum
{
static long randomValue = 0;
srandom((unsigned)mach_absolute_time() + randomValue);
randomValue = random();
return random();
}
+ (NSString *)generateRandomStringByLen:(int)len
{
char *str = (char *)malloc(len + 1);
if(!str)
return nil;
memset(str, 0, len + 1);
for(int i = 0; i < len; ++i)
{
str[i] = abs([self generateRandomNum] % 10) + '0';
LOG_CHAR(str[i]);
}
LOG_CSTR(str);
NSString *ret = [NSString stringWithUTF8String:str];
free(str);
return ret;
}
@end
微风不燥,阳光正好,你就像风一样经过这里,愿你停留的片刻温暖舒心。
我是程序员小迷(致力于C、C++、Java、Kotlin、Android、Shell、JavaScript、TypeScript、Python等编程技术的技巧经验分享),若作品对您有帮助,请关注、分享、点赞、收藏、在看、喜欢,您的支持是我们为您提供帮助的最大动力。
欢迎关注。助您在编程路上越走越好!