VC2010的rand产生的随机数范围是0~0x7fff,也就是16位的伪随机数,有时可能不够用。产生32位伪随机数的比较好的算法是由Takuji Nishimura 和 Makoto Matsumoto于1997年开发的一种随机数生成方法,它基于有限二进制字段上的矩阵线性再生,可以快速产生高质量的伪随机数,该算法的循环周期为219937-1,俗称MT19937算法。现在又有了这种算法的改进,并且还有基于SIMD的伪随机数生成算法,其网址是:http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/emt.html。
另外这个网址还专门做了随机数生成的工具包:http://www.agner.org/random/。
是两个不同的研究小组,并且都发表了ACM Trans.文章。
这个网址给出了几种方法生成的随机数的分布图:http://www.cnblogs.com/thu539/archive/2011/11/14/2247717.html。