温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

关于windows下的c++的rand函数详解

发布时间:2020-07-17 21:16:04 来源:网络 阅读:523 作者:boyka3721 栏目:编程语言

rand不是真正的随机函数,是伪随机函数

srand设置随机函数种子


srand设置一个参数后,每调用一次rand产生一个随机数

srand(1000001)

rand  –  21589

rand  –  29335

rand  –  14469

 

srand参数相同,多次调用rand依次返回的值相同,

srand (1000001)

rand  - 21589

srand (1000001)

rand  - 21589

srand (1000001)

rand  - 21589

 

 

srand入参每增加1,rand返回值增加3 (从我的电脑上看到的,其它可能会有不同,不知道)

srand (1000001)

rand  - 21589

srand (1000002)

rand  - 21592

srand (1000003)

rand  - 21595


所以通常来说,一个模块srand一般只调用一次,千万不要在ontimer之类的函数中调用srand和rand


如果只在主线程调用

srand (1000001)

则1:子线程不调用srand, 子线程1,子线程2同时使用主线程的种子,依次产生随机数

则2:子线程1,子线程2,都调用srand (1000001),则子线程1,子线程2,各自产生随机数



向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI