有一段代码:
void GenerateData(int nPoints, int nDims, std::vector<float> & data)
{
unsigned int seed = 111;
data.resize(nPoints*nDims);
for (int i = 0; i < nPoints; i++)
for (int j = 0; j < nDims; j++)
data[i*nDims + j] = ((float)rand_r(&seed)) / RAND_MAX;
}
现在想在windows的vs2013中使用,我考虑使用srand()+rand(),
请问srand()的位置应该在哪里?
首先rand是一个有状态的序列, 你可以理解为数列.
而srand是改变这个数列起始状态的函数.
srand只需要设置一次, 在程序启动之后设置就行了.
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。