Linux时间函数及编程

所有的操作系统的运行都涉及到时间管理,一般包括:系统时间和时间计时器,linux下关于这两个也有对应的API来得到它们,下面具体描述一下:

1)linux下如何得到系统时间及特点:

 time_t time(time_t* tloc);

//说明: 通过参数和返回值,传递从1970年1月1日0时整到现在经历的秒数。

2)各种操作time( )返回值的API:       

//得到格林威治时间
struct tm* gmtime(const time_t* timep);

//得到当前时区时间
struct tm* locatime(const time_t* timep);
// 将TM时间转化成字符串
char* asctime(const struct tm* tm);
// 将TM时间转化成当前时区时间字符串
char* ctime(const struct tm* tm);

3)可用作计时器的时间:

// 得到从0时起到现在的时间,可以精确到微秒
int gettimeofday(struct timeval* tv,struct timezone* tz);

具体应用后续补充。

时间: 2024-09-24 21:03:56

Linux时间函数及编程的相关文章

linux时间函数详解

我们在编程中可能会经常用到时间,比如取得系统的时间(获取系统的年.月.日.时.分.秒,星期等 ),或者是隔一段时间去做某事,那么我们就用到一些时间函数. linux下存储时间常见的有两种存储 方式,一个是从1970年到现在经过了多少秒,一个是用一个结构来分别存储年月日时分秒的. time_t 这种类型就是用来存储从1970年到现在经过了多少秒,要想更精确一点,可以用结构struct timeval,它精确 到微妙. struct timeval { long tv_sec ; /*秒*/ lon

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

一.gettimeofday()函数的使用方法: 1.简介: 在C语言中可以使用函数gettimeofday()函数来得到时间.它的精度可以达到微妙 2.函数原型: #include<sys/time.h> int gettimeofday(struct  timeval*tv,struct  timezone *tz ) 3.说明: gettimeofday()会把目前的时间用tv 结构体返回,当地时区的信息则放到tz所指的结构中 4.结构体: 1>timeval struct  ti

linux中时间函数

linux下常用时间类型有四种: time_t . struct   tm. struct  timeval .    struct   timespec 1.time_t   时间函数 time_t  类型在time.h中定义: #ifndef   __TIME__T #define  __TIME_T typedef    long  time_t #endif 可见, time_t 实际上是一个长整型,其值表示从1970年1月1日00时00分00秒(linux系统的Epoch时间)到当前时

Linux系统下的单调时间函数

欢迎转载,转载请注明出处:http://forever.blog.chinaunix.net 一.编写linux下应用程序的时候,有时候会用到高精度相对时间的概念,比如间隔100ms.那么应该使用哪个时间函数更准确呢?    1.time        该函数返回的是自1970年以来的秒数,显然精度不够,不能使用    2.gettimeofday        该函数返回的是自1970年以来的秒数和微秒数,精度显然是够了.我想有很多程序员也是用的这个函数来计算相对时间的,如果说系统时间因为nt

浅谈Linux环境下并发编程中C语言fork()函数的使用_C 语言

由fork创建的新进程被称为子进程(child process).fork函数被调用一次,但返回两次.子进程的返回值是0,而父进程的返回值则是新进程的进程ID.将子进程ID返回给父进程的理由是:因为一个进程的子进程可以有多个,并且没有一个函数使一个进程可以获得其所有子进程的进程ID.fork使子进程得到返回值0的理由是:一个进程只会有一个父进程,所以子进程总是可以调用getpid以获得其父进程的进程ID. 使fork失败的两个主要原因是:系统中已经有了太多的进程,或者该实际用户ID的进程总数超过

Linux时间时区、常用时间函数、整形时间计算思路详解

Linux时间时区详解与常用时间函数 时间与时区 整个地球分为二十四时区,每个时区都有自己的本地时间. Ø  UTC时间 与 GMT时间 我们可以认为格林威治时间就是时间协调时间(GMT = UTC),格林威治时间和UTC时间都用秒数来计算的. Ø  UTC时间与本地时间 UTC + 时区差 = 本地时间 时区差东为正,西为负.在此,把东八区时区差记为 +0800 UTC + (+0800) = 本地(北京)时间 Ø  UTC与Unix时间戳 在计算机中看到的UTC时间都是从(1970年01月0

解析Linux下的时间函数:设置以及获取时间的方法_C 语言

一.时间函数 复制代码 代码如下: time_t time(time_t *t);char *asctime(const struct tm *tm);char *asctime_r(const struct tm *tm, char *buf);char *ctime(const time_t *timep);char *ctime_r(const time_t *timep, char *buf);struct tm *gmtime(const time_t *timep); //获取的为英

Linux GCC 64位编程技巧

                                 linux GCC 64位编程技巧 64位系统的优势? 既然要采用64位系统,首先要知道64位系统的优势所在.对于技术人员来说,完全没有必要去看那些厂家拿出的厚厚的说明书.或者某个研究机构抛出的一堆的数字,64位系统的优势总结起来很简单:内存大.速度快! 内存大 与32位系统相比,64位系统的地址空间大大增大,达到了18PB,18PB究竟是多大呢?说出来有点吓人:4G内存的40亿倍!这么大的空间,不要说内存了,就是整个磁盘的数据都

Linux系统shell脚本编程――生产实战案例

Linux系统shell脚本编程――生产实战案例 在日常的生产环境中,可能会遇到需要批量检查内网目前在线的主机IP地址有哪些,还可能需要检查这些在线的主机哪些端口是开放状态,因此依靠手工来检查是可以实现,但比较费时费力,所以需要结合shell脚本来实现批量检查的功能,那么今天就来做个小小的实验. 1.开发脚本前准备 一般大家都知道,测试主机是否在线,常用的命令无非就是ping.nmap,因此,首先找一个地址来测试下ping命令的效果 [root@centos6 scripts]# ping 17