C語言time頭文件(time.h)中strftime函數的用法及代碼示例。
用法:
size_t strftime (char* ptr, size_t maxsize, const char* format,
const struct tm* timeptr );
將時間格式化為字符串
參數
- ptr
- 指向將目標C字符串複製到的目標數組的指針。
- maxsize
- 要複製的最大字符數ptr,包括終止null-character。
- format
- C字符串,包含常規字符和特殊格式說明符的任意組合。這些格式說明符由函數替換為相應的值,以表示在中指定的時間timeptr。它們都以百分比開頭(
%
)符號,它們是:
說明符 取而代之 示例 %a
工作日縮寫名稱* Thu
%A
工作日全名* Thursday
%b
月份縮寫名稱* Aug
%B
月份全名* August
%c
日期和時間表示* Thu Aug 23 14:55:02 2001
%C
年份除以100,並截斷為整數( 00-99
)20
%d
每月的某天,zero-padded( 01-31
)23
%D
短的 MM/DD/YY
日期,相當於%m/%d/%y
08/23/01
%e
每月的某天,以空格填充( 1-31
)23
%F
短的 YYYY-MM-DD
日期,相當於%Y-%m-%d
2001-08-23
%g
以周為基礎的年份,後兩位數字( 00-99
)01
%G
以周為基礎的年份 2001
%h
縮寫的月份名稱*(與 %b
)Aug
%H
小時以24小時製( 00-23
)14
%I
12h格式的小時( 01-12
)02
%j
一年中的某天( 001-366
)235
%m
以十進製數字表示的月份( 01-12
)08
%M
分鍾 ( 00-59
)55
%n
New-line個字符( '\n'
)%p
AM或PM指定 PM
%r
12小時製* 02:55:02 pm
%R
24小時 HH:MM
時間,相當於%H:%M
14:55
%S
第二 ( 00-61
)02
%t
Horizontal-tab個字符( '\t'
)%T
ISO 8601時間格式( HH:MM:SS
), 相當於%H:%M:%S
14:55:02
%u
ISO 8601工作日為星期一,數字為 1
(1-7
)4
%U
以第一個星期日為第一個星期的第一天的星期數( 00-53
)33
%V
ISO 8601周編號( 01-53
)34
%w
工作日為小數,星期日為 0
(0-6
)4
%W
以第一個星期一作為第一個星期的第一天的星期數( 00-53
)34
%x
日期表示* 08/23/01
%X
時間表示* 14:55:02
%y
年份,後兩位數字( 00-99
)01
%Y
Year 2001
%z
ISO 8601與時區UTC的偏移量(1分鍾= 1、1小時= 100)
如果無法確定時區,則沒有字符+100
%Z
時區名稱或縮寫*
如果無法確定時區,則沒有字符CDT
%%
A %
標誌%
注意:黃色行表示指定符和C99引入的sub-specifiers。從C99開始,兩個locale-specific修飾符也可以插入在百分號(%
),並在適當的情況下要求指定替代格式的說明者:
修飾符 意義 適用於 E
使用語言環境的替代表示 %Ec %EC %Ex %EX %Ey %EY
O
使用語言環境的替代數字符號 %Od %Oe %OH %OI %Om %OM %OS %Ou %OU %OV %Ow %OW %Oy
- timeptr
- 指向一個指針tm包含日曆時間的結構,該時間細分為各個部分(請參見struct tm)。
返回值
如果生成的C字符串的長度(包括終止null-character)不超過maxsize,該函數返回複製到的字符總數ptr(不包括終止的null-character)。否則,它返回零,並且由指向的數組的內容ptr是不確定的。
示例
/* strftime example */
#include <stdio.h> /* puts */
#include <time.h> /* time_t, struct tm, time, localtime, strftime */
int main ()
{
time_t rawtime;
struct tm * timeinfo;
char buffer [80];
time (&rawtime);
timeinfo = localtime (&rawtime);
strftime (buffer,80,"Now it's %I:%M%p.",timeinfo);
puts (buffer);
return 0;
}
輸出示例:
Now it's 03:21PM. |
相關用法
- C語言 clock用法及代碼示例
- C語言 difftime用法及代碼示例
- C語言 mktime用法及代碼示例
- C語言 time用法及代碼示例
- C語言 asctime用法及代碼示例
- C語言 ctime用法及代碼示例
- C語言 gmtime用法及代碼示例
- C語言 localtime用法及代碼示例
注:本文由純淨天空篩選整理自C標準庫大神的英文原創作品 C strftime function。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。