gettimeofday()函数:获取当前时间

一:头文件:

#include <sys/time.h>    
#include <unistd.h>

二:函数定义:

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

三:函数说明:
gettimeofday()会把目前的时间有tv 所指的结构返回,当地时区的信息则放到tz 所指的结构中。

四:函数参数:
timeval 定义:

struct timeval{
    long tv_sec;  //秒
    long tv_usec;  //微秒
};

timezone 定义:

struct timezone
{
    int tz_minuteswest;  //和Greenwich 时间差了多少分钟
    int tz_dsttime;  //日光节约时间的状态
};

上述两个结构都定义在/usr/include/sys/time.h. tz_dsttime 所代表的状态如下

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

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

六:事例:

#include <sys/time.h>
#include <unistd.h>
main(){
    struct timeval tv;
    struct timezone tz;
    gettimeofday (&tv, &tz);
    printf("tv_sec; %d\n", tv.tv_sec);
    printf("tv_usec; %d\n", tv.tv_usec);
    printf("tz_minuteswest; %d\n", tz.tz_minuteswest);
    printf("tz_dsttime, %d\n", tz.tz_dsttime);
}

输出结果:
在这里插入图片描述

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
gettimeofday函数time函数都可以用于获取当前时间,但它们有一些区别。 1. gettimeofday函数: gettimeofday函数是一个系统调用,用于获取当前时间的秒数和微秒数。它的原型如下: ```c int gettimeofday(struct timeval *tv, struct timezone *tz); ``` 其中,tv是一个指向timeval结构体的指针,用于存储获取到的时间信息。tz是一个指向timezone结构体的指针,用于存储时区信息。但是在实际使用中,通常将tz设置为NULL即可。 2. time函数time函数是一个库函数,用于获取当前时间的秒数。它的原型如下: ```c time_t time(time_t *t); ``` 其中,t是一个指向time_t类型的指针,用于存储获取到的时间信息。但是在实际使用中,通常将t设置为NULL即可。 区别: 1. 返回值类型不同: - gettimeofday函数返回0表示成功,返回-1表示失败。 - time函数返回当前时间的秒数。 2. 精度不同: - gettimeofday函数可以获取到微秒级别的时间信息。 - time函数只能获取到秒级别的时间信息。 3. 使用方式不同: - gettimeofday函数需要传入一个指向timeval结构体的指针,用于存储获取到的时间信息。 - time函数可以直接返回当前时间的秒数。 范例:根据提供的引用内容,可以得出以下结论: gettimeofday函数time函数都可以用于获取当前时间,但是gettimeofday函数可以获取到微秒级别的时间信息,而time函数只能获取到秒级别的时间信息。此外,gettimeofday函数是一个系统调用,而time函数是一个库函数

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

路漫漫其远,吾求索

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值