如何用c++时间戳获取随机时间且格式为yyyy-MM-dd HH:mm:ss,SSS格式,而且随机出来的年份不止是2023
时间: 2024-05-01 16:24:09 浏览: 92
时间戳转换C++代码实现
你可以使用C语言中的time函数获取当前时间的时间戳,然后将其转换为struct tm类型,再根据需要进行修改。以下是一个示例代码:
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main() {
time_t t = time(NULL);
struct tm tm = *localtime(&t);
tm.tm_year = rand() % 100 + 1923; // 随机年份
tm.tm_mon = rand() % 12 + 1; // 随机月份
tm.tm_mday = rand() % 28 + 1; // 随机日期
tm.tm_hour = rand() % 24; // 随机小时
tm.tm_min = rand() % 60; // 随机分钟
tm.tm_sec = rand() % 60; // 随机秒数
int ms = rand() % 1000; // 随机毫秒数
char buf[30];
strftime(buf, sizeof(buf), "%Y-%m-%d %H:%M:%S", &tm);
printf("%s,%03d\n", buf, ms);
return 0;
}
```
该代码会随机生成一个年份在1923到2022之间的日期时间,并输出格式为yyyy-MM-dd HH:mm:ss,SSS的字符串。注意,该代码中的随机数生成仅供参考,你可以根据实际需要进行修改。
阅读全文