描述
C库函数size_t strftime(char *str, size_t maxsize, const char *format, const struct tm *timeptr)格式化结构中表示的时间timeptr根据定义的格式规则format并存入str。
声明
以下是 strftime() 函数的声明。
size_t strftime(char *str, size_t maxsize, const char *format, const struct tm *timeptr)
参数
str- 这是指向复制结果 C 字符串的目标数组的指针。
maxsize- 这是要复制到 str 的最大字符数。
format- 这是包含常规字符和特殊格式说明符的任意组合的 C 字符串。这些格式说明符被函数替换为相应的值,以表示 tm 中指定的时间。格式说明符是 -
说明符 | 取而代之 | 示例 |
---|---|---|
%一种 | 缩写的工作日名称 | Sun |
%A | 完整的工作日名称 | Sunday |
%b | 缩写的月份名称 | Mar |
%B | 完整的月份名称 | March |
%C | 日期和时间表示 | 2012 年 8 月 19 日星期日 02:56:02 |
%d | 每月的第几天 (01-31) | 19 |
%H | 24 小时格式的小时 (00-23) | 14 |
%我 | 12h 格式的小时 (01-12) | 05 |
%j | 一年中的第几天 (001-366) | 231 |
%m | 十进制数形式的月份 (01-12) | 08 |
%M | 分钟 (00-59) | 55 |
%p | AM或PM指定 | PM |
%S | 第二 (00-61) | 02 |
%U | 第一个星期日作为第一周的第一天的周数 (00-53) | 33 |
%w | 工作日为十进制数,星期日为 0 (0-6) | 4 |
%W | 第一个星期一作为第一周的第一天的周数 (00-53) | 34 |
%X | 日期表示 | 12 年 8 月 19 日 |
%X | 时间表示 | 02:50:06 |
%y | 年份,最后两位数字 (00-99) | 01 |
%Y | Year | 2012 |
%Z | 时区名称或缩写 | CDT |
%% | 一个牌子 | % |
timeptr- 这是一个指向包含日历时间的 tm 结构的指针,该结构分解为如下所示的组件 -
struct tm {
int tm_sec; /* seconds, range 0 to 59 */
int tm_min; /* minutes, range 0 to 59 */
int tm_hour; /* hours, range 0 to 23 */
int tm_mday; /* day of the month, range 1 to 31 */
int tm_mon; /* month, range 0 to 11 */
int tm_year; /* The number of years since 1900 */
int tm_wday; /* day of the week, range 0 to 6 */
int tm_yday; /* day in the year, range 0 to 365 */
int tm_isdst; /* daylight saving time */
};
返回值
如果生成的 C 字符串适合小于 size 个字符(包括终止的 null-character),则返回复制到 str 的字符总数(不包括终止的 null-character),否则返回零。
示例
下面的例子展示了 strftime() 函数的用法。
#include <stdio.h>
#include <time.h>
int main () {
time_t rawtime;
struct tm *info;
char buffer[80];
time( &rawtime );
info = localtime( &rawtime );
strftime(buffer,80,"%x - %I:%M%p", info);
printf("Formatted date & time:|%s|\n", buffer );
return(0);
}
让我们编译并运行上面的程序,将产生以下结果 -
Formatted date & time:|08/23/12 - 12:40AM|
相关用法
- C语言 strcspn()用法及代码示例
- C语言 strtol()用法及代码示例
- C语言 strrchr()用法及代码示例
- C语言 strtok()用法及代码示例
- C语言 strncat()用法及代码示例
- C语言 strupr()用法及代码示例
- C语言 strlen()用法及代码示例
- C语言 strtod()用法及代码示例
- C语言 strspn()用法及代码示例
- C语言 strstr()用法及代码示例
- C语言 strcat()用法及代码示例
- C语言 strxfrm()用法及代码示例
- C语言 strchr()用法及代码示例
- C语言 strrev()用法及代码示例
- C语言 strcmpi()用法及代码示例
- C语言 strtok()、strtok_r()用法及代码示例
- C语言 strerror()用法及代码示例
- C语言 strpbrk()用法及代码示例
- C语言 strnset()用法及代码示例
- C语言 strcoll()用法及代码示例
注:本文由纯净天空筛选整理自 C library function - strftime()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。