红联Linux门户
Linux帮助

Linux编程系统时间的获取

发布时间:2015-09-25 15:47:54来源:linux网站作者:OneSea

1.背景

在Linux编程的过程中,有时候需要用到系统时间,例如根据当前的时间戳产生文件名。为此,本文对Linux中关于时间的一些函数和类型进行简单的总结。


2.time_t

time_t其实是一个长整形的别名,它记录的是从1970年1月1日0时0分0秒到当前所经历的时间。


3.time()

#include <time.h> 
time_t time(time_t *t); 

此函数主要用于获取系统当前时间(从1970年1月1日0时0分到当前所经历的时间)。  


4.localtime()

#include <time.h> 
struct tm *localtime(const time_t *timep); 

由于time_t类型的时间不便于人们阅读,因此提供了将time_t转换成便于人们阅读的格式。localtime()就是这类函数之一,详细用例见参考资料[2]。


5.gettimeofday()

#include <sys/time.h> 
int gettimeofday(struct timeval *tv, struct timezone *tz); 

time()只能获得的时间精度为秒,若想获得更高精度的时间,可以使用gettimeofday(),可以达到微秒级。getimeofday()所获取的时间也是从1970年1月1日0时0分到当前的时间。


Linux与Windows双系统时间问题的真正解决办法:http://www.linuxdiyf.com/linux/11091.html

Linux修改系统时间的简洁方法:http://www.linuxdiyf.com/linux/1171.html