C语言时间处理函数strftime

本文详细介绍了strftime函数的功能和用法,包括如何将时间结构体转换为指定格式的字符串,并提供了丰富的格式化选项说明及示例代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

很方便实用的函数,mark一下~

function

strftime

<ctime>
size_t strftime ( char * ptr, size_t maxsize, const char * format, const struct tm * timeptr );
Format time to string
Copies into  ptr  the content of  format , expanding its format tags into the corresponding values as specified by  timeptr , with a limit of maxsize  characters.

Parameters

ptr
Pointer to the destination array where the resulting C string is copied.
maxsize
Maximum number of characters to be copied to  ptr.
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 in  timeptr. They all begin with a percentage ( %) sign, and are:
specifier Replaced by Example
%a Abbreviated weekday name * Thu
%A Full weekday name * Thursday
%b Abbreviated month name * Aug
%B Full month name * August
%c Date and time representation * Thu Aug 23 14:55:02 2001
%d Day of the month (01-31) 23
%H Hour in 24h format (00-23) 14
%I Hour in 12h format (01-12) 02
%j Day of the year (001-366) 235
%m Month as a decimal number (01-12) 08
%M Minute (00-59) 55
%p AM or PM designation PM
%S Second (00-61) 02
%U Week number with the first Sunday as the first day of week one (00-53) 33
%w Weekday as a decimal number with Sunday as 0 (0-6) 4
%W Week number with the first Monday as the first day of week one (00-53) 34
%x Date representation * 08/23/01
%X Time representation * 14:55:02
%y Year, last two digits (00-99) 01
%Y Year 2001
%Z Timezone name or abbreviation CDT
%%% sign %
* The specifiers whose description is marked with an asterisk (*) are locale-dependent.
timeptr
Pointer to a  tm structure that contains a calendar time broken down into its components (see  tm).

Return Value

If the resulting C string fits in less than  maxsize  characters including the terminating null-character, the total number of characters copied to  ptr  (not including the terminating null-character) is returned.
Otherwise, zero is returned and the contents of the array are indeterminate.

Portability

This description corresponds to the C++ version of this function (which is the same as in the ISO-C Standard of 1990). C compilers may support additional specifiers and modifiers for the  format  parameter of this function, which are not described here.

Example

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
/* strftime example */
#include <stdio.h>
#include <time.h>

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.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值