Movatterモバイル変換


[0]ホーム

URL:


cplusplus.com

Reference

function
<ctime>

strftime

size_t strftime (char* ptr, size_t maxsize, const char* format,                 const struct tm* timeptr );
Format time as string
Copies intoptr the content offormat, expanding its format specifiers into the corresponding values that represent the time described intimeptr, with a limit ofmaxsize characters.

Parameters

ptr
Pointer to the destination array where the resulting C string is copied.
maxsize
Maximum number of characters to be copied toptr, including the terminatingnull-character.
format
C string containing any combination of regular characters and special format specifiers. These format specifiers are replaced by the function to the corresponding values to represent the time specified intimeptr. They all begin with a percentage (%) sign, and are:
specifierReplaced byExample
%aAbbreviated weekday name *Thu
%AFull weekday name *Thursday
%bAbbreviated month name *Aug
%BFull month name *August
%cDate and time representation *Thu Aug 23 14:55:02 2001
%CYear divided by 100 and truncated to integer (00-99)20
%dDay of the month, zero-padded (01-31)23
%DShortMM/DD/YY date, equivalent to%m/%d/%y08/23/01
%eDay of the month, space-padded ( 1-31)23
%FShortYYYY-MM-DD date, equivalent to%Y-%m-%d2001-08-23
%gWeek-based year, last two digits (00-99)01
%GWeek-based year2001
%hAbbreviated month name * (same as%b)Aug
%HHour in 24h format (00-23)14
%IHour in 12h format (01-12)02
%jDay of the year (001-366)235
%mMonth as a decimal number (01-12)08
%MMinute (00-59)55
%nNew-line character ('\n')
%pAM or PM designationPM
%r12-hour clock time *02:55:02 pm
%R24-hourHH:MM time, equivalent to%H:%M14:55
%SSecond (00-61)02
%tHorizontal-tab character ('\t')
%TISO 8601 time format (HH:MM:SS), equivalent to%H:%M:%S14:55:02
%uISO 8601 weekday as number with Monday as1 (1-7)4
%UWeek number with the first Sunday as the first day of week one (00-53)33
%VISO 8601 week number (01-53)34
%wWeekday as a decimal number with Sunday as0 (0-6)4
%WWeek number with the first Monday as the first day of week one (00-53)34
%xDate representation *08/23/01
%XTime representation *14:55:02
%yYear, last two digits (00-99)01
%YYear2001
%zISO 8601 offset from UTC in timezone (1 minute=1, 1 hour=100)
If timezone cannot be determined, no characters
+100
%ZTimezone name or abbreviation *
If timezone cannot be determined, no characters
CDT
%%A% sign%
* The specifiers marked with an asterisk (*) are locale-dependent.
Note: Yellow rows indicate specifiers and sub-specifiers introduced by C99. Since C99, two locale-specific modifiers can also be inserted between the percentage sign (%) and the specifier proper to request an alternative format, where applicable:
ModifierMeaningApplies to
EUses the locale's alternative representation%Ec %EC %Ex %EX %Ey %EY
OUses the locale's alternative numeric symbols%Od %Oe %OH %OI %Om %OM %OS %Ou %OU %OV %Ow %OW %Oy
timeptr
Pointer to atm structure that contains a calendar time broken down into its components (seestruct tm).

Return Value

If the length of the resulting C string, including the terminating null-character, doesn't exceedmaxsize, the function returns the total number of characters copied toptr (not including the terminating null-character).
Otherwise, it returns zero, and the contents of the array pointed byptr are indeterminate.

Compatibility

Particular library implementations may support additionalspecifiers or combinations.
Those listed here are supported by the latest C and C++ standards (both published in 2011), but those in yellow were introduced in C99 (only required for C++ implementations since C++11), and may not be supported by libraries that comply with older standards.

Example

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
/* 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;}

Example output:
Now it's 03:21PM.


Data races

The function accesses the array pointed byformat and the object pointed bytimeptr. On success, it also modifies the elements in the array pointed byptr.
Concurrently changing locale settings may also introduce data races.

Exceptions (C++)

No-throw guarantee: this function never throws exceptions.

See also

ctime
Convert time_t value to string(function)
asctime
Convert tm structure to string(function)
Home page |Privacy policy
© cplusplus.com, 2000-2025 - All rights reserved -v3.3.4s
Spotted an error? contact us

[8]ページ先頭

©2009-2026 Movatter.jp