选到哪里看命

srand()、rand()

srand(static_cast<unsigned int>(time(nullptr))) 是 C++ 中用于初始化随机数生成器(Random Number Generator, RNG)的一个常用语句。srand 函数是 C++ 标准库 <cstdlib> 中的一部分,用于设置随机数发生器的种子值,这个种子值是后续随机数生成的基础。
static_cast<unsigned int>(time(nullptr)) 部分的作用是:

  1. time(nullptr) 函数会返回当前时间(以秒为单位)自 1970 年 1 月 1 日 00:00:00 UTC 的时间戳。nullptr 表示使用当前进程的时间。
  2. static_cast<unsigned int>() 进行类型转换,将 time_t 类型(通常是一个整数)转换成无符号的 unsigned int 类型。这是因为在 srand 函数中,种子值通常需要是整数类型。
    整体来说,这个表达式用当前时间作为随机数生成器的初始种子,确保每次程序运行时得到不同的随机数序列。每次调用 rand()srand() 后,随机数生成器的状态就会不同,从而得到不同的一系列随机数。如果在程序的生命周期内不改变种子,那么每次程序启动时都会得到相同的随机数序列。
#include <bits/stdc++.h> 

using namespace std;

const int Row = 2;
const int Col = 4;

int main()
{
	srand(static_cast<unsigned int>(time(nullptr)));
	
	string array[Row][Col] = {
		{"安阳", "滑县", "林州", "内黄"},
		{"支农", "就业", "帮扶", "林业"}
	};
	
	int a = rand() % Col; 
	int b = rand() % Col;
	
	cout << array[0][a] << array[1][b];
	
	return 0;
} 
  • 9
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值