描述
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()。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。