偷懒人 发表于 2024-10-31 15:02:11

c++时间形式转换

https://cplusplus.com/reference/ctime/
先放上官方文档。
ctime类里,有很多转换时间格式的方法,下面只举例将UTC时间,转换为字符串的代码。
‌‌Unix时间‌,也称为‌POSIX时间,是UNIX或类UNIX系统使用的时间表示方式。它从协调世界时1970年1月1日0时0分0秒起至现在的总秒数,不考虑闰秒。这种时间表示方式被定义为从‌UTC时间1970年1月1日0时0分开始流逝的秒数。Unix时间也常被称为Unix时间戳,是计算机世界中使用的一种时间表示方法。如果某个时间是以巨大的科学计数的形式显示的,那它基本就是UTC时间。
上代码,注释是关键。
#include   //需要包含此类time_t rawtime;//定义一个时间型变量,就类似”整形、浮点型变量“struct tm ptm;//定义一个时间结构rawtime = (time_t)list_n1->at(0).time;//将一个获取的UTC时间,赋值给刚才定义的时间变量。(time_t)的作用是转换类型,获取的UTC时间是double型,不加(time_t)的话,编译时会报警告,不影响程序运行。gmtime_s(&ptm,&rawtime); //上面链接的官方文档里用的是gmtime(),如果本句写成 ptm = gmtime(&rawtime) , 编译时会显示错误,提示你gmtime()不安全,现在都用gmtime_s()。cout
页: [1]
查看完整版本: c++时间形式转换