欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

【unix时间戳小示例】linux/unix系统获取unix时间戳

程序员文章站 2024-01-23 18:30:40
...

unix时间戳

unix时间戳是从1970年1月1日(UTC/GMT的午夜(0时0点0分))开始所经过的秒数,不考虑闰秒。

C 库函数 - gmtime()

C 库函数 struct tm *gmtime(const time_t *timer) 使用 timer 的值来填充 tm 结构,并用协调世界时(UTC)也被称为格林尼治标准时间(GMT)表示。

C 库函数 - mktime()

C 库函数 time_t mktime(struct tm *timeptr) 把 timeptr 所指向的结构转换为自 1970 年 1 月 1 日以来持续时间的秒数,发生错误时返回-1。

demo

#include <stdio.h>
#include <time.h>
 
int main ()
{
   time_t rawtime;
   struct tm *pttm;
   
   time(&rawtime);

   pttm = gmtime(&rawtime ); // 获取CST/GMT时间
   
   printf("timestamp:%ld\n", mktime(pttm));
 
   return(0);
}

打印信息:

timestamp:1640013995

引经据典

https://www.runoob.com/cprogramming/c-function-mktime.html
https://baike.baidu.com/item/unix%E6%97%B6%E9%97%B4%E6%88%B3/2078227?fr=aladdin
https://www.runoob.com/cprogramming/c-function-gmtime.html