gettimeofday()函数用法、特点

本文详细介绍了C语言中的gettimeofday()函数,该函数能够获取从1970年至今的秒数及微妙级别的精确时间。文章解析了函数的参数、返回值以及可能的错误代码,同时解释了如何使用timeval和timezone结构体来存储时间和时区信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

针对C语言来说,函数gettimeofday()用来来得到从1970年1月1日0时0分0秒到现在的秒数,其精度达到微妙(1e-6s);

#include <sys/time.h>

int gettimeofday(struct timeval*tv, struct timezone *tz);

返回值,成功则返回0,失败返回-1,错误代码存于errno。

其参数tv是保存获取时间结果的结构体,参数tz用于保存时区结果:

 

struct timeval
{
    long int tv_sec;     // 秒数
    long int tv_usec;     // 微秒数
}
struct timezone
{
    int tz_minuteswest;/*格林威治时间往西方的时差*/
    int tz_dsttime;    /*DST 时间的修正方式*/
}

 

 

其中,timezone值如下:

 

DST_NONE /*不使用*/
DST_USA /*美国*/
DST_AUST /*澳洲*/
DST_WET /*西欧*/
DST_MET /*中欧*/
DST_EET /*东欧*/
DST_CAN /*加拿大*/
DST_GB /*大不列颠*/
DST_RUM /*罗马尼亚*/
DST_TUR /*土耳其*/
DST_AUSTALT /*澳洲(1986年以后)*/

timezone 参数若不使用,则传入NULL即可。
 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值