1、 time() 函数提供了 秒 级的精确度

time_t time(time_t * timer)
函数返回从UTC1970-1-1 0:0:0开始到现在的秒数

2、 struct timespec 提供了 ns  级的精确度

定义如下:

typedef long time_t;
#ifndef _TIMESPEC
#define _TIMESPEC
struct timespec {
  time_t tv_sec; // seconds
  long tv_nsec; // and nanoseconds
};
#endif

对应的操作函数为

int clock_gettime(clockid_t, struct timespec *)

其中 clockid_t 为使用的时钟,主要有以下四种:

CLOCK_REALTIME    统当前时间,从1970年1.1日算起
CLOCK_MONOTONIC  系统的启动时间,不能被设置
CLOCK_PROCESS_CPUTIME_ID 本进程运行时间
CLOCK_THREAD_CPUTIME_ID 本线程运行时间

3、struct timeval 提供了 us 级 的精确度

struct timeval {
  time_t tv_sec; // seconds
  long tv_usec; // microseconds
};

对应的操作函数为

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

其中 timezone 为时区,定义如下:

struct timezone{
  int tz_minuteswest; //miniutes west of Greenwich
  int tz_dsttime; //type of DST correction
};

一般时区填写为 NULL即可。

linux c 时间函数的更多相关文章

  1. linux中时间函数

    linux下常用时间类型有四种: time_t . struct   tm. struct  timeval .    struct   timespec 1.time_t   时间函数 time_t ...

  2. Unix/Linux系统时间函数API

    首先说明关于几个时间的概念: 世界时:起初,国际上的标准时间是格林尼治标准时间,以太阳横穿本初子午线的时刻为标准时间正午12点.它根据天文环境来定义,就像古代人们根据日晷来计时一样,如下图: 原子时: ...

  3. Linux系统时间函数

    先来说说自己在做工程过程中的一些理解: 1, 输入time_t,输出tm格式的函数 loctaltime(time_t) / gmtime(time_t) 其中localtime会受时区和夏令时影响, ...

  4. Linux常用时间函数

    time()函数: NAME time - get time in seconds SYNOPSIS #include <time.h> time_t time(time_t *tloc) ...

  5. 基于Linux整形时间的常用计算思路

    上一次分享了Linux时间时区详解与常用时间函数,相信大家对Linux常见时间函数的使用也有了一定的了解,在工作中遇到类似获取时间等需求的时候也一定能很好的处理.本文基于Linux整形时间给出一些简化 ...

  6. Linux时间函数之gettimeofday()函数之使用方法

    1.简介: 在C语言中可以使用函数gettimeofday()函数来得到时间.它的精度可以达到微妙 2.函数原型: #include<sys/time.h> int gettimeofda ...

  7. 【转】Linux时间函数之gettimeofday()函数之使用方法

    原文网址:http://blog.csdn.net/tigerjibo/article/details/7039434 一.gettimeofday()函数的使用方法: 1.简介: 在C语言中可以使用 ...

  8. linux几种时间函数总结

    一.linux时间函数总结 最近的工作中用到的时间函数比较频繁,今天抽时间总结一下,在linux下,常用的获取时间的函数有如下几个:  asctime,  ctime, gmtime, localti ...

  9. Linux下系统时间函数、DST等相关问题总结(转)

    Linux下系统时间函数.DST等相关问题总结 下面这个结构体存储了跟时区相关的位移量(offset)以及是否存在DST等信息,根据所在的时区信息,很容易找到系统时间与UTC时间之间的时区偏移,另外根 ...

随机推荐

  1. 自学python 1.

    1.变量命名规范 1.数字,字母,下划线 2.不能数字开头和纯数字 3.要有意义 4.不要太长 5.驼峰和下划线 6.不要用中文 7.不能用关键字 8.区分大小写2.name = input(&quo ...

  2. Spring Boot 2程序不能加载 com.mysql.jdbc.Driver 问题

    用Spring Boot Starter 向导生成了一个很简单SpringBoot程序, 用到了 MySQL, 总是下面不能加载 Mysql driver class 错误. Cannot load ...

  3. 01.Redis 初体验

    0. Redis安装 官网下载Redis 解压缩 make make install 安装后的执行命令被保存在了/usr/local/bin目录下 1. 配置文件:redis.conf daemoni ...

  4. AD软件使用心得

    1.在更新原理图之前一定要标记所有器件,否则无法生成PCB器件. 2.学会用sch list网表来批量修改器件名称 3.布线的面

  5. 深度优先遍历(DFS)(转)

    优先搜索(DFS, Depth First Search)是一个针对图和树的遍历算法.早在19世纪就被用于解决迷宫问题. 对于下面的树而言,DFS方法首先从根节点1开始,其搜索节点顺序是1,2,3,4 ...

  6. event.target解析

    event.target返回最初触发事件的DOM对象. Vue例子: main.js methods:{ fan:function(event){ console.log(event.target); ...

  7. cygwin 安装包管理器 apt-cyg

    https://github.com/transcode-open/apt-cyg apt-cyg is a simple script. To install: lynx -source https ...

  8. java中的绝对路径和相对路径

    1.基本概念的理解 绝对路径:绝对路径就是你的主页上的文件或目录在硬盘上真正的路径,(URL和物理路径)例如:C:/xyz/test.txt 代表了test.txt文件的绝对路径.http://www ...

  9. eclips运行generatorConfig.xml文件生成代码

    描述: 如何通过eclips工具来运行 generatorConfig.xml 文件来自动生成代码并获取数据(类似于mybaits逆向生成)? mybatis-generator:generate 2 ...

  10. Webstorm快捷操作

    设置和使用技巧:前端工具开发利器webstrom专篇...更新中 选中行上下移:cl+shift+上下箭头 展示文件结构图:view-tool_window-structure.具体的图标含义 生成注 ...