因此,每次调用攻击函数时,我都会制作一个需要生成随机数的游戏.对于程序的每次运行它生成一个不同的,我认为这是因为我使用srand(time(NULL)); 但是,如果我不止一次攻击,它会返回我已经调用的相同数字.这是我目前随机函数的一个示例.
srand(time(NULL));
int attrand = rand() % 16;
Run Code Online (Sandbox Code Playgroud)
每次在程序的同一执行中调用它时,如何使其返回不同的数字?
将种子初始化移动到某个init函数,并仅保留int attrand = rand() % 16;在此函数中.
void my_init() {
srand(time(NULL));
}
int get_random() {
return rand() % 16;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1462 次 |
| 最近记录: |