srand,rand函数的使用注意事项
来源:互联网 发布:美瞳购买知乎 编辑:程序博客网 时间:2024/05/22 18:22
在实际应用中,我们经常需要产生随机数,这些随机数的应用范围也是十分广泛的。但计算机只能依据一定算法产生伪随机数序列。c语言中最常用的产生伪随机数序列的函数是srand和rand
srand,rand函数在实现上利用TlsGetValue等一系列函数进行数据的存取,也就意味着srand,rand存取的数据是和线程相关的。
根据我使用经验,总结出以下几点注意事项:
1、rand函数初次使用之前必须调用srand函数初始化,才能保证产生不同的随机数序列。
2、在多线程程序中,如果每个线程都需要调用rand,那么必须在每个线程里单独进行初始化。
3、单进程的srand初始化,可以简单的采用time(0)即可,但是多线程中,如果每个线程的开始时间近乎相同,那么就不可采用time(0)进行初始化,因为time(0)实际精度只有s级,会导致每个线程产生相同的随机数序列,因此需要用每个线程各不相同的一个数去初始化srand,例如threadid等等
- srand,rand函数的使用注意事项
- srand,rand函数的使用注意事项
- srand,rand随机数发生器函数的使用
- rand()与srand()函数的使用
- rand和srand函数的使用
- 关于rand()函数srand()函数的使用(转)
- rand()函数与srand()函数的对比与使用
- srand和rand的使用
- 产生随机数 rand() 和 srand() 函数的使用
- 随机函数 rand,srand,random,srandom 的区别与使用
- 关于rand和srand函数使用的一点心得
- 随机数函数srand和rand()的使用心得
- 随机函数 rand,srand,random,srandom 的区别与使用
- 关于rand和srand函数使用的一点心得
- 关于rand和srand函数使用的一点心得
- 随机函数 rand,srand,random,srandom 的区别与使用
- 随机函数 rand,srand,random,srandom 的区别与使用
- C/C++函数srand()和rand()的使用
- SQLSERVER中的全角和半角
- windows网络编程头文件注意事项
- CentOS下SVN 安装, 配置, 迁移
- ssh框架 Struts2.3+Spring3.1+Hibernate4.0.1......
- 一个北京软件工程师的反思
- srand,rand函数的使用注意事项
- 深入Mysql字符集设置
- uva 705 - Slash Maze
- 用 for/in 在 Java 5.0 中增强循环
- 利用urllib2方便处理网页捉包
- android PreferenceActivity
- Ubuntu 12.10 server 安装 Jenkins
- Android透明效果的实现
- URL集合