本文将详细介绍在C++中如何使用标准库函数来生成随机数,并提供具体的实现代码示例。适合初学者学习和参考。
在C++中生成随机数需要用到`rand()`函数和`srand()`函数。需要注意的是,C++标准库并没有提供直接的`random(int number)`函数来产生随机数。
如果你只需要生成一个随机数而不需要限定范围的话,可以直接使用`rand()`函数:
```cpp
#include
#include // 包含 rand() 和 srand()
int main()
{
for (int i = 0; i < 10; ++i)
std::cout << rand() << ;
return 0;
}
```
`rand()`函数会返回一个随机的整数,这个值会在0到RAND_MAX之间。其中,RAND_MAX至少是32767。
然而,在使用`rand()`之前通常需要调用`srand()`来设置种子(seed)。如果未设定种子,默认情况下它将采用相同的数值作为输入,从而导致每次程序运行时生成的随机数序列相同。为了使每次执行都能产生不同的随机数序列,可以利用当前时间作为种子:
```cpp
#include
#include // 包含 rand() 和 srand()
#include // 包含 time()
int main()
{
srand(time(NULL)); // 设置当前时间为种子
for (int i = 0; i < 10; ++i)
std::cout << rand() % 100 << ; // 输出范围在[0,99]的随机数
return 0;
}
```
在这个示例中,`srand(time(NULL))`使用当前时间作为种子值来初始化随机数生成器。此外,在输出随机数时我们还通过取模运算(%)将结果限制在一个较小范围内。
这样就完成了C++中利用标准库函数产生和设置范围内的随机整数的基本方法介绍。