c/c++随机数产生相同解决方案
来源:互联网 发布:php.ini extension 编辑:程序博客网 时间:2024/05/07 05:50
谨记srand()不要调用两次或两次以上。。
void main()
{
for(int i=0;i<10;i++)
{
srand( (unsigned)time( NULL ) );
cout<<rand()<<endl;
}
}
这样调用的时候,因为CPU高速的关系,调用的srand( (unsigned)time( NULL ) ); 生成的种子数一样。导致rand()产生的随机数也一样。
改为:
void main()
{ srand( (unsigned)time( NULL ) );
for(int i=0;i<10;i++)
{
cout<<rand()<<endl;
}
}
有时候这些错误很隐蔽,在构造函数中做了一个check方法。在check方法中调用init方法,然后在init方法中产生随机数。注意如果srand( (unsigned)time( NULL ) ); 被写进了check()或者init()等方法中,一定要保证该方法在构造的时候只被调用一次。最好是把该行代码srand( (unsigned)time( NULL ) );写到构造函数中进行初始化种子的操作。
- c/c++随机数产生相同解决方案
- c++/c 产生随机数
- [C]如何产生随机数~
- C语言产生随机数
- C/C++产生随机数
- C语言产生随机数
- objective-c产生随机数
- C语言产生随机数
- C语言产生随机数
- c/c++产生随机数
- C/C++产生随机数
- C/C++产生随机数
- C语言产生随机数
- C/C++产生随机数
- C/C++ 产生随机数
- C/C++产生随机数
- C/C++产生随机数 .
- C/C++产生随机数
- 软件架构设计 第一章
- 通用描述发现和集成 (UDDI)
- IIS 无法启动:发生意外错误0x8ffe2740 的原因
- 关于GDAL读取MODIS卫星数据
- 鲍家街43号《错误》
- c/c++随机数产生相同解决方案
- 生活本该如此
- 许巍《我的秋天》
- tcp中,ack是累积的
- 在谈引用计数
- 【vc】CFileDialog 使用介绍
- 自已写了个Web 扫雷程序
- php,网站开发,急
- 许巍《那一年》