Namespaces
Variants

std::experimental:: randint

From cppreference.net
定义于头文件 <experimental/random>
template < class IntType >
IntType randint ( IntType a, IntType b ) ;
(库基础技术规范 v2)

生成一个在闭区间 [a, b] 内的随机整数。

目录

参数

a, b - 指定范围的整数值

返回值

一个随机整数 i ,位于闭区间 [a, b] 内,通过使用线程局部的 std:: uniform_int_distribution < IntType > 实例并调用 每线程随机数引擎 生成。

备注

如果 IntType 不是 short , int , long , long long , unsigned short , unsigned int , unsigned long , 或 unsigned long long 中的任意一种,则程序是非良构的。

a > b 时,其行为是未定义的。

示例

#include <experimental/random>
#include <iostream>
int main()
{
    int random_number = std::experimental::randint(100, 999);
    std::cout << "random 3-digit number: " << random_number << '\n';
}

可能的输出:

random 3-digit number: 273

参见

重新设定每线程随机引擎的种子
(函数)