Namespaces
Variants

RAND_MAX

From cppreference.net
定义于头文件 <stdlib.h>
#define RAND_MAX /*implementation defined*/

扩展为一个整数常量表达式,其值等于函数 rand() 返回的最大值。该值取决于具体实现。保证该值至少为 32767

示例

#include <limits.h>
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main(void)
{
    srand(time(NULL)); // 使用当前时间作为随机数生成器的种子
    printf("RAND_MAX: %i\n", RAND_MAX);
    printf("INT_MAX: %i\n", INT_MAX);
    printf("Random value on [0,1]: %f\n", (double)rand() / RAND_MAX);
}

可能的输出:

RAND_MAX: 2147483647
INT_MAX: 2147483647
Random value on [0,1]: 0.362509

参考文献

  • C17 标准 (ISO/IEC 9899:2018):
  • 7.22/3 通用工具 <stdlib.h> (页: 248)
  • C11 标准 (ISO/IEC 9899:2011):
  • 7.22/3 通用工具 <stdlib.h> (页: 340)
  • C99标准(ISO/IEC 9899:1999):
  • 7.20/3 通用工具 <stdlib.h>(页码:306)
  • C89/C90 标准 (ISO/IEC 9899:1990):
  • 4.10 通用工具 <stdlib.h>

参见

生成伪随机数
(函数)
初始化伪随机数生成器
(函数)
C++ 文档 for RAND_MAX