rand(void)用于产生一个伪随机unsigned int 整数。

srand(seed)用于给rand()函数设定种子。

srand 和 rand 应该组和使用。一般来说,srand 是对 rand 进行设置。

比如:

srand((UINT)GetCurrentTime());

int x = rand() % 100;

是生成 0 到 100 之间的随机数。

srand()是用来初始化随机种子数的,因为rand的内部实现是用线性同余法做的,他不是真的随机数,只不过是因为其周期特别长,所以有一定的范围里可看成是随机的。

用"int x = rand() % 100;"来生成 0 到 100 之间的随机数这种方法是不可取的,比较好的做法是: j=(int)(n*rand()/(RAND_MAX+1.0))  产生一个0到n之间的随机数。

其中RAND_MAX=0x7fffffff

可以算一下 0x7FFFFFFF 是多少

 每个十六进制数4bit,因此8位16进制是4个字节,刚好是一个int整型 F的二进制码为 1111 7的二进制码为 0111 这样一来,整个整数 0x7FFFFFFF 的二进制表示就是除了首位是 0,其余都是1 就是说,这是最大的整型数 int(因为第一位是符号位,0 表示他是正数)   

用 INT_MAX 常量可以替代这个值)。