std::experimental::randint (3) - Linux Manuals

std::experimental::randint: std::experimental::randint


std::experimental::randint - std::experimental::randint


Defined in header <experimental/random>
template <class IntType> (library fundamentals TS v2)
IntType randint(IntType a, IntType b);

Generates a random integer in the closed interval [a, b].


a, b - integer values specifying the range

Return value

A random integer i in the closed interval [a, b], produced using a thread-local instance of std::uniform_int_distribution<IntType> invoked with the per-thread_random_number_engine.


If IntType is not one of short, int, long, long long, unsigned short, unsigned int, unsigned long, or unsigned long long, the program is ill-formed.
The behavior is undefined if a > b.


// Run this code

  #include <iostream>
  #include <experimental/random>

  int main()
      int random_number = std::experimental::randint(100, 999);
      std::cout << "random 3-digit number: " << random_number << '\n';

Possible output:

  random 3-digit number: 273

See also

       reseeds the per-thread random engine
reseed (function)