rand 与random的区别(转)

int rand(void); //返回一个随机数0 ~ pow(2, sizeof(int))-1
long int random(void); //返回一个随机数0 ~ pow(2, sizeof(long int))-1

void srand(unsigned int seed); //设置rand函数的种子
void srandom(unsigned int seed); //设置random函数的种子

总结:
rand和random的区别就是返回类型不同,int和long int(虽然在普通的32位机上效果是一样的)
使用的rand或者random之前,一般使用time(0) getpid()设置随机种子.否则默认种子就是1,则每次产生的随机数都是一样的

ps:
使用rand或者random生成重复随机数的概率如下:
10万 -----3个
100万-----230个
1000万----23000个
由此可见,重复率随着数量增加出现的概率变得越来越快.

你可能感兴趣的:(C语言)