首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

timespec_get

在头文件<time.h>中定义

int timespec_get(struct timespec * ts,int base)

(自C11以来)

#define TIME_UTC / *实现定义的* /

(自C11以来)

1)修改timespec指向的对象以ts在时基中保存当前日历时间base

2)扩展为适合用作base参数的值timespec_get

其他的宏常量TIME_可以由实现提供,以指示附加的时基。

如果baseTIME_UTC,那么。

  • ts-> tv_sec被设置为自实现定义时期以来的秒数,被截断为整个值
  • ts-> tv_nsec成员设置为纳秒的整数倍数,取整为系统时钟的分辨率

参数

TS

-

指向struct timespec类型的对象的指针

基础

-

TIME_UTC或指示时基的另一个非零整数值

返回值

base成功的价值,否则为零。

笔记

POSIX函数clock_gettime(CLOCK_REALTIME,ts)也可以用来填充timespec自Epoch以来的时间。

代码语言:javascript
复制
#include <stdio.h>
#include <time.h>
 
int main(void)
{
    struct timespec ts;
    timespec_get(&ts, TIME_UTC);
    char buff[100];
    strftime(buff, sizeof buff, "%D %T", gmtime(&ts.tv_sec));
    printf("Current time: %s.%09ld UTC\n", buff, ts.tv_nsec);
}

输出:

代码语言:javascript
复制
Current time: 02/18/15 14:34:03.048508855 UTC

参考

  • C11标准(ISO / IEC 9899:2011):
    • 7.27.2.5 timespec_get函数(p:390)

扫码关注腾讯云开发者

领取腾讯云代金券