strftime()是C語言中的函數,用於格式化日期和時間。它位於頭文件time.h下,該文件還包含一個名為struct tm的結構,該結構用於保存時間和日期。 strftime()的語法如下所示:
size_t strftime(char *s, size_t max, const char *format, const struct tm *tm);
strftime()函數根據格式中指定的格式化規則對broken-down時間tm進行格式化,並將其存儲在字符數組s中。
strftime()的一些格式說明符如下所示:
%x =首選日期表示
%I =小時(十進製數字)(12小時製)。
%M =分鍾的分鍾數,範圍從00到59。
%p =根據給定的時間值,“AM”或“PM”等。
%a =星期幾的縮寫
%A =工作日全名
%b =縮寫的月份名稱
%B = 3月的全月名稱
%c =日期和時間表示
%d =每月的一天(01-31)
%H = 24小時格式的小時(00-23)
%I = 12h格式的小時(01-12)
%j =一年中的某天(001-366)
%m =月作為十進製數字(01-12)
%M =分鍾(00-59)
在time.h中定義的結構struct tm如下:
struct tm { int tm_sec; // seconds int tm_min; // minutes int tm_hour; // hours int tm_mday; // day of the month int tm_mon; // month int tm_year; // The number of years since 1900 int tm_wday; // day of the week int tm_yday; // day in the year int tm_isdst; // daylight saving time };
// C program to demonstrate the
// working of strftime()
#include <stdlib.h>
#include <stdio.h>
#include <time.h>
#define Size 50
int main ()
{
time_t t ;
struct tm *tmp ;
char MY_TIME[Size];
time( &t );
//localtime() uses the time pointed by t ,
// to fill a tm structure with the
// values that represent the
// corresponding local time.
tmp = localtime( &t );
// using strftime to display time
strftime(MY_TIME, sizeof(MY_TIME), "%x - %I:%M%p", tmp);
printf("Formatted date & time:%s\n", MY_TIME );
return(0);
}
Formatted date & time:03/20/17 - 02:55PM
Why and when do we use strftime() ?
當我們製作一個軟件/應用程序時,它將根據用戶的需求以多種格式輸出當前時間,並且最重要的是。然後,在這種情況下,我們將使用此函數。它的特長是我們可以用許多不同的格式顯示日期和時間。
參考:http://man7.org/linux/man-pages/man3/strftime.3.html>Linux Man Page
相關用法
- C++ log()用法及代碼示例
- C++ div()用法及代碼示例
- C++ fma()用法及代碼示例
- C++ imag()用法及代碼示例
- C++ map key_comp()用法及代碼示例
- C++ real()用法及代碼示例
- C++ wcsstr()用法及代碼示例
- C++ wcstok()用法及代碼示例
- C語言 strlwr()用法及代碼示例
- C++ wcsncpy()用法及代碼示例
注:本文由純淨天空篩選整理自 strftime() function in C/C++。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。