Chinaunix首页 | 论坛 | 博客
  • 博客访问: 14548
  • 博文数量: 6
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 71
  • 用 户 组: 普通用户
  • 注册时间: 2017-01-18 15:29
文章分类
文章存档

2017年(6)

我的朋友

分类: LINUX

2017-02-08 15:58:58

00010-linux时间编程.doc

一、 时间的类型
1.格林威治标准时间
coordinated universal time(UTC)是世界标准时间,即常说的格林威治标准时间(greenwich mean time,GMT).
2.日历时间
日历时间(calendar time)是用"一个标准时间点(如1970年1月1日0点)到此时经过的秒数"来表示的时间.
二、 时间函数系统调用
1. 获取日历时间:
#include
time_t time(time_t *tloc)
函数功能:获取日历时间,即从1970年1月1日0点到现在所经历的秒数.
参数:通常设置为NULL
2. 将日历时间转换为格林威治时间:
struct tm
{
    int tm_sec; //秒值
    int tm_min; //分钟值
    int tm_hour; //小时值
    int tm_mday; //本月第几日
    int tm_mon; //本年第几月
    int tm_year; //tm_year+1900=哪一年
    int tm_wday; //本周第几日
    int tm_yday; //本年第几日
    int tm_isdst; //日光节约时间
}
struct tm *gmtime(const time_t *timep)
函数功能:将日历时间转化为格林威治标准时间,并保存在tm结构
参数:日历时间的返回值
3. 将日历时间转换为本地时间:
struct tm* localtime(const time_t *timep)
函数功能:将日历时间转化为本地时间,并保存至tm结构
参数:日历时间的返回值
4. 时间显示:
(1)char *asctime(const struct tm *tm)
函数功能:将tm格式的时间转化为字符串
参数:日历时间的返回值
        (2)char *ctime(const time_t *timep)
函数功能:将日历时间转化为本地时间的字符串形式
参数:日历时间的返回值
5. 获取当日凌晨到现在所度过时间:


int gettimeofday(struct timeval *tv,struct timezone *tz)
函数功能:获取从今日凌晨(0:0:0)到现在的时间差,常用于计算事件耗时
参数1:存放从今日凌晨(0:0:0)到现在的时间差,时间差以秒或微秒为单位,以结构体形式存放
struct timeval
{
int tv_sec; //秒数
int tv_usec; //微秒数
}
参数2:常设置为null
函数用法:可以在做某件事情之前调用gettimeofday(),在做完该件事情之后调用gettimeofday(),两个函数的参数1的差就是做该事情所消耗的时间.


6. 延时函数:


<1>使程序睡眠seconds秒
unsigned int sleep(unsigned int seconds)
函数功能:使程序睡眠seconds秒
参数:需要休眠的秒数
<2>使程序睡眠usec微秒
void usleep(unsigned long usec)
函数功能:使程序睡眠usec微秒
参数:需要休眠的秒数


三.例子:
 
 
运行结果:


 

阅读(844) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~