strftime()函数strftime
语法:
1 2 |
?? #include <time.h> ?? size_t strftime( char *str, size_t maxsize, const char *fmt, struct tm *time ); |
功能:函数按照参数fmt所设定格式将time类型的参数格式化为日期时间信息,然后存储在字符串str中(至多maxsize 个字符)。用于设定时间不同类型的代码为:
代码? 含义
%a? 星期的缩略形式
%A? 星期的完整形式
%b? 月份的缩略形式
%B? 月份的完整形式
%c? 月份的缩略形式
%d? 月中的第几天(1-31)
%H? 小时, 24小时格式 (0-23)
%I? 小时, 12小时格式? (1-12)
%j? 年中的第几天(1-366)
%m? 月份 (1-12). Note: 某些版本的Microsoft Visual C++ 可能使用取值范围0-11.
%M? 分钟(0-59)
%p? 本地时间的上午或下午(AM or PM)
%S? 秒钟(0-59)
%U? 年中的第几周,星期天是一周的第一天
%w? 星期几的数字表示(0-6, 星期天=0)
%W? 一年中的第几周,星期天是一周的第一天
%x? 标准日期字符串
%X? 标准时间字符串
%y? 年(0-99)
%Y? 用CCYY表示的年(如:2004)
%Z? 时区名
%%? 百分号
函数strftime()返回值为处理结果字符串str中字符的个数,如果发生错误返回零。
1 2 3 4 5 6 7 8 9 10 11 12 13 |
#include<stdio.h> #include<time.h> intmain() { time_t rawtime; struct tm* timeinfo; char timE[80]; time(&rawtime); timeinfo=localtime(&rawtime); strftime(timE,80,"Date:\n%Y-%m-%d\nTime:\n%I:%M:%S\n",timeinfo); printf("%s",timE); return0; } |
输出:
Date:
2010-09-02
Time:
04:22:11