利用 timeb 生成毫秒级别随机数
众所周知,重复打开相同的可执行文件,想要输出的数不同,往往需要以时间作为随机种子。
如:
#include<bits/stdc++.h>
int main()
{
srand(time(0));
int a = rand();
printf("%d\n", a);
}
但是,以这种方式,在每 1 秒内重复运行这个程序,输出的随机数都是相同的。
那么,想要打破这个 “1 秒限制”,就需要用到 timeb
。
#include<bits/stdc++.h>
int main()
{
struct _timeb T;
_ftime(&T);
srand(T.millitm); //获得毫秒
int a = rand();
printf("%d\n", a);
}
这样,在 1 秒内反复执行程序:
可以看到每次执行程序输出的随机数都不同。
这样,就实现 “利用 timeb 生成毫秒级别随机数” 了。
EdisonBa
2023.7.29
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】