如何在mikroC中实现rand() C++函数?
我尝试了rand(),但不起作用...我不知道该怎么解决这个问题
发布于 2013-03-05 17:09:16
如果您的C实现符合C89,那么它应该包含一个有效的rand() --也许您忘记了包含<stdlib.h>
如果没有,那么编写自己的rand是很简单的,只要你不需要非常高质量的生成数字,而对于俄罗斯方块来说,你不应该这样做。POSIX将这个小型实现作为需要跨体系结构重复相同伪随机数序列的程序的一种选择:
static unsigned long next = 1;
/* RAND_MAX assumed to be 32767 */
int myrand(void) {
next = next * 1103515245 + 12345;
return((unsigned)(next/65536) % 32768);
}
void mysrand(unsigned seed) {
next = seed;
}它不会给你带来很大的伪随机性,但也不会比许多现实生活中的rand()实现更糟糕。
https://stackoverflow.com/questions/15219683
复制相似问题