Latest web development tutorials

funciones de la biblioteca C - strftime ()

C biblioteca estándar - <time.h> C biblioteca estándar - <time.h>

descripción

Tiempo Cstrftime función de biblioteca size_t (char * str, size_tmaxsize, const char * formato, const struct tm * timeptr)Formato deacuerdo con las reglas de formato definidos en la estructura del formatotimeptrrepresentado, y lo almacena enstr.

declaración

La siguiente es una declaración de función strftime ().

size_t strftime(char *str, size_t maxsize, const char *format, const struct tm *timeptr)

parámetros

  • str - Este es un vector de punteros a la meta, generada C para copiar la cadena.
  • maxsize - Este es el número máximo de caracteres que se copia en el str.
  • Formato - Esta es una cadena C que contiene cualquier combinación de caracteres normales y especificadores de formato especial.El especificador de formato se sustituye por el valor correspondiente es una función de tiempo especificado tm. especificadores de formato son:
说明符替换为实例
%a缩写的星期几名称 Sun
%A完整的星期几名称 Sunday
%b缩写的月份名称 Mar
%B完整的月份名称 March
%c日期和时间表示法 Sun Aug 19 02:56:02 2012
%d一月中的第几天(01-31)19
%H24 小时格式的小时(00-23)14
%I12 小时格式的小时(01-12)05
%j一年中的第几天(001-366)231
%m十进制数表示的月份(01-12)08
%M分(00-59)55
%pAM 或 PM 名称PM
%S秒(00-61)02
%U一年中的第几周,以第一个星期日作为第一周的第一天(00-53)33
%w十进制数表示的星期几,星期日表示为 0(0-6)4
%W一年中的第几周,以第一个星期一作为第一周的第一天(00-53)34
%x日期表示法08/19/12
%X时间表示法02:50:06
%y年份,最后两个数字(00-99)01
%Y年份2012
%Z时区的名称或缩写CDT
%%一个 % 符号%
  • timeptr - Este es un puntero a una estructura tm, la estructura contiene un canto desglosado en las siguientes secciones del tiempo del calendario:

struct tm {
   int tm_sec;         /* 秒,范围从 0 到 59				*/
   int tm_min;         /* 分,范围从 0 到 59				*/
   int tm_hour;        /* 小时,范围从 0 到 23				*/
   int tm_mday;        /* 一月中的第几天,范围从 1 到 31	                */
   int tm_mon;         /* 月份,范围从 0 到 11				*/
   int tm_year;        /* 自 1900 起的年数				*/
   int tm_wday;        /* 一周中的第几天,范围从 0 到 6		        */
   int tm_yday;        /* 一年中的第几天,范围从 0 到 365	                */
   int tm_isdst;       /* 夏令时						*/	
};

Valor de retorno

Si el producto es menor que el tamaño de la cadena C de caracteres (incluyendo el carácter terminador nulo), se vuelve al número de copias de caracteres en str (sin incluir el carácter terminador nulo), de lo contrario, devuelve cero.

Ejemplos

El siguiente ejemplo muestra se utiliza la función 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("格式化的日期 & 时间 : |%s|\n", buffer );
  
   return(0);
}

Vamos a compilar y ejecutar el programa anterior, lo que resultará en lo siguiente:

格式化的日期 & 时间 : |08/23/12 - 12:40AM|

C biblioteca estándar - <time.h> C biblioteca estándar - <time.h>