当前所在位置:珠峰网资料 >> 计算机 >> 计算机等级考试 >> 正文
计算机等级考试二级C语言中time函数6
发布时间:2010/9/15 15:50:19 来源:www.xue.net 编辑:城市总裁吧

  4.6 分解时间转化为日历时间

  这里说的分解时间就是以年、月、日、时、分、秒等分量保存的时间结构,在c/c++中是tm结构。我们可以使用mktime()函数将用tm结构表示的时间转化为日历时间。其函数原型如下:

  time_t mktime(struct tm * timeptr);

  其返回值就是转化后的日历时间。这样我们就可以先制定一个分解时间,然后对这个时间进行操作了,下面的例子可以计算出1997年7月1日是星期几:

  #include "time.h"

  #include "stdio.h"

  #include "stdlib.h"

  int main(void)

  {

  struct tm t;

  time_t t_of_day;

  t.tm_year=1997-1900;

  t.tm_mon=6;

  t.tm_mday=1;

  t.tm_hour=0;

  t.tm_min=0;

  t.tm_sec=1;

  t.tm_isdst=0;

  t_of_day=mktime(&t);

  printf(ctime(&t_of_day));

  return 0;

  }

  运行结果:

  tue jul 01 00:00:01 1997

  现在注意了,有了mktime()函数,是不是我们可以操作现在之前的任何时间呢?你可以通过这种办法算出1945年8月15号是星期几吗?答案是否定的。因为这个时间在1970年1月1日之前,所以在大多数编译器中,这样的程序虽然可以编译通过,但运行时会异常终止。

  5.总结

  本文介绍了标准c/c++中的有关日期和时间的概念,并通过各种实例讲述了这些函数和数据结构的使用方法。笔者认为,和时间相关的一些概念是相当重要的,理解这些概念是理解各种时间格式的转换的基础,更是应用这些函数和数据结构的基础。

广告合作:400-664-0084 全国热线:400-664-0084
Copyright 2010 - 2017 www.my8848.com 珠峰网 粤ICP备15066211号
珠峰网 版权所有 All Rights Reserved