C---格式化日期函数

转载 2015年11月19日 15:59:23

结构tm的定义为
struct tm
{
int tm_sec;
int tm_min;
int tm_hour;
int tm_mday;
int tm_mon;
int tm_year;
int tm_wday;
int tm_yday;
int tm_isdst;
};
int tm_sec 代表目前秒数,正常范围为0-59,但允许至61秒
int tm_min 代表目前分数,范围0-59
int tm_hour 从午夜算起的时数,范围为0-23
int tm_mday 目前月份的日数,范围01-31
int tm_mon 代表目前月份,从一月算起,范围从0-11
int tm_year 从1900 年算起至今的年数
int tm_wday 一星期的日数,从星期一算起,范围为0-6
int tm_yday 从今年1月1日算起至今的天数,范围为0-365
int tm_isdst 日光节约时间的旗标


time_t time(time_t *t);
time() 函数:返回自 Unix 纪元(January 1 1970 00:00:00 GMT)起的当前时间的秒数。
主要用来获取当前的系统时间,返回的结果是一个time_t类型,其值表示从UTC(Coordinated Universal Time)时间1970年1月1日00:00:00(称为UNIX系统的Epoch时间)到当前时刻的秒数。然后调用localtime函数将time_t所表示的UTC时间转换为本地时间(我们是+8区,比UTC多8个小时)并转成struct tm类型,该类型的各数据成员分别表示年月日时分秒。

char *ctime(const time_t *time);
功 能: 把日期和时间转换为字符串,输出格式如下:
           Thu Nov 19 15:54:39
程序例:
1
2
3
4
5
6
7
8
9
#include<cstdio>
#include<ctime>
intmain(void)
{
time_t t;
t=time(&t);
printf("Today'sdateandtime:%s\n",ctime(&t));
return 0;
}


char* asctime (const struct tm * timeptr).
把timeptr指向的tm结构体中储存的时间转换为字符串字符串格式返格式为:回,Www Mmm dd hh:mm:ss yyyy。其中Www为星期;Mmm为月份;dd为日;hh为时;mm为分;ss为秒;yyyy为年份

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/* asctime example */
#include <stdio.h>      /* printf */
#include <time.h>       /* time_t, struct tm, time, localtime, asctime */
 
int main ()
{
    time_t rawtime;
    struct tm * timeinfo;
 
    time ( &rawtime );
    timeinfo = localtime ( &rawtime );
    printf "The current date/time is: %s"asctime (timeinfo) );
 
    return 0;
}
函数范例的输出:
1
The current date/time is: Wed Feb 13 15:46:11 2013

struct tm *localtime(const time_t *clock);
此函数获得的tm结构体的时间是日历时间

struct tm *gmtime(const time_t *time);
功能:把日期和时间转换为格林威治(GMT)时间的函数。将参数time 所指的time_t 结构中的信息转换成真实世界所使用的时间日期表示方法,然后将结果由结构tm返回。

其中asctime ()与ctime()都是可以把时间转为Thu Nov 19 15:54:39 格式的,不同的是asctime ()是转为ASCII,且函数参数为struct *tm结构体的,一般用localtime()或gmtime()函数转为 tm 格式;ctime()是转为字符串,且参数是time_t。



C_Cpp中的时间日期函数的用法

  • 2011年03月31日 11:10
  • 42KB
  • 下载

c/c++中的日期处理函数详解

  • 2011年05月12日 14:43
  • 126KB
  • 下载

C/C++ 时间、日期函数 用法总结

1、  localtime函数

Linux常用C函数-日期时间篇

日期时间篇 asctime ctime gettimeofday gmtime localtime mktime settimeofday time asct...
  • weiqubo
  • weiqubo
  • 2014年04月10日 14:04
  • 1142

C/C++中与时间、日期有关的函数总结

From: http://blog.csdn.net/byrsongQQ/article/details/5790445 本文从介绍基础概念入手,探讨了在C/C++中对日期和时间操作所用到的数据...
  • shun01
  • shun01
  • 2013年11月13日 19:03
  • 546

Linux常用C函数-日期时间篇

Linux常用C函数-日期时间篇日期时间篇asctime ,ctime,  gettimeofday,  gmtime,  localtime,  mktime,  settimeofday  ,ti...

c /c++中日期和时间的获取:strftime()函数

在c/c++获得日期和时间的函数很多,但是用起来比较繁琐。可以参考这篇文章,若是时间有限,可忽略,继续向下看。可以用strftime() 一个函数来实现各种日期或者时间,简单方便。strftime()...

C/C++中的日期和时间函数

C/C++中的日期和时间函数 这篇文章是我转载的,内容很详细,在此谢谢原作者。 C/C++中的日期和时间 time_t与struct tm转换 摘要:       本文从介绍基础概...

C/C++中对日期和时间操作所用到的数据结构和函数

摘要: 本文从介绍基础概念入手,探讨了在C/C++中对日期和时间操作所用到的数据结构和函数,并对计时、时间的获取、时间的计算和显示格式等方面进行了阐述。本文还通过大量的实例向你展示了time.h头文件...
  • ttgoo
  • ttgoo
  • 2011年05月27日 11:49
  • 697

Linux常用C函数-日期时间篇

日期时间篇 asctime ctime gettimeofday gmtime localtime mktime settimeofday time asctime(将时间和日期...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C---格式化日期函数
举报原因:
原因补充:

(最多只允许输入30个字)