##### cppreference.com

##### Search

Create account

##### Namespaces

- Page
- Discussion

##### Variants

##### Views

- View
- Edit
- History

##### Actions

# std::experimental::randint

From cppreference.com
< cpp‎ | experimental

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

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

### [edit] Parameters

a, b | - | integer values specifying the range

### [edit] 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.

### [edit] Remarks

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.

### [edit] Example

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

### [edit] See also

reseed | reseeds the per-thread random engine (function) [edit]

Retrieved from "http://en.cppreference.com/mwiki/index.php?title=cpp/experimental/randint&oldid=82540"