std::timespec_get
来自 cppreference.com
在头文件 <ctime> 中定义 |
||
int timespec_get( std::timespec* ts, int base ); |
(1) | (自 C++17 起) |
#define TIME_UTC /* 实现定义 */ |
(2) | (自 C++17 起) |
2) 展开为适合用作
std::timespec_get
的 base 参数的值。实现可能会提供以 TIME_
开头的其他宏常量,以指示其他时间基准。
如果 base 是 TIME_UTC
,那么
- ts->tv_sec 设置为自实现定义纪元以来的秒数,截断为整数值,
- ts->tv_nsec 成员设置为纳秒的整数,四舍五入到系统时钟的分辨率。
内容 |
[编辑] 参数
ts | - | 指向 std::timespec 类型的对象的指针 |
base | - | TIME_UTC 或另一个非零整数,指示时间基准 |
[编辑] 返回值
如果成功,则为 base 的值,否则为零。
[编辑] 备注
POSIX 函数 clock_gettime(CLOCK_REALTIME, ts)
也可用于填充 std::timespec
,其中包含自纪元以来的时间。
[编辑] 示例
运行此代码
#include <ctime> #include <iostream> int main() { std::timespec ts; std::timespec_get(&ts, TIME_UTC); char buf[100]; std::strftime(buf, sizeof buf, "%D %T", std::gmtime(&ts.tv_sec)); std::cout << "Current time: " << buf << '.' << ts.tv_nsec << " UTC\n"; }
可能的输出
Current time: 06/24/16 20:07:42.949494132 UTC
[编辑] 参见
(C++17) |
以秒和纳秒为单位的时间 (结构) |
返回系统当前时间,表示自纪元以来的时间 (函数) | |
C 文档 for timespec_get
|