C标准说,
rand返回
int0到RAND_MAX(含)范围内的数据,因此将其除以RAND_MAX(从
stdlib.h)是正确的规范化方法。实际上,RAND_MAX几乎总是等于MAX_INT,但是不要依赖于此。
由于
rand自C89以来一直是ISO
C的一部分,因此保证可以在任何地方使用它,但不能保证其随机数的质量。但是,如果可移植性是您主要关心的问题,那么它是您的最佳选择,除非您愿意使用Python的
random模块。
Python
sys.maxint完全是一个不同的概念。它只是Python可以
以其自己的 int类型表示的最大正数;较大的将必须是多头。Python的int和long与C并没有特别的关系。



