English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Biblioteca padrão do C - <time.h>
função da biblioteca C size_t strftime(char *str, size_t maxsize, const char *format, const struct tm *timeptr) com base no format definido nas regras de formatação timeptr O tempo representado str 。
A seguir está a declaração da função strftime().
size_t strftime(char *str, size_t maxsize, const char *format, const struct tm *timeptr)
Sinalizador | Substituído por | Exemplo |
---|---|---|
%a | Nome abreviado do dia da semana | Dom |
%A | Nome completo do dia da semana | Sunday |
Domingo | %b | Nome abreviado do mês |
Mar | %B | Nome completo do mês |
Março | %c | Formato de data e hora 19 02:56:02 2012 |
Sun Aug | %d1-31Ano, os dois últimos dígitos (00 | 19 |
O dia do mês (0 | 24 %H-23Ano, os dois últimos dígitos (00 | 14 |
Hora no formato de hora (00 | 12 %I1-12Ano, os dois últimos dígitos (00 | 05 |
Hora no formato de hora (0 | %j1-366Ano, os dois últimos dígitos (00 | 231 |
%m | O dia do ano (001-12Ano, os dois últimos dígitos (00 | 08 |
Número decimal do mês (0 | %M-59Ano, os dois últimos dígitos (00 | 55 |
Minuto (00 | %p | Nome AM ou PM |
PM | %S-61Ano, os dois últimos dígitos (00 | 02 |
Segundo (00 | %U-53Ano, os dois últimos dígitos (00 | 33 |
A semana do ano, com o primeiro domingo como o primeiro dia da primeira semana (00 | %w-6Ano, os dois últimos dígitos (00 | 4 |
Número decimal do dia da semana, domingo como 0 (0 | %W-53Ano, os dois últimos dígitos (00 | 34 |
A semana do ano, com o primeiro domingo como o primeiro dia da primeira semana (00 | %x | 08/19/12 |
Formato de data | %X | 02:5Formato de tempo6 |
0:0 | %y-99Ano, os dois últimos dígitos (00 | 01 |
) | %Y | 2012 |
Ano | %Z | O nome ou abreviação da zona horária |
CDT | Um símbolo %% | % |
struct tm { int tm_sec; /* Segundo, variando de 0 a 59 */ int tm_min; /* Minuto, variando de 0 a 59 */ int tm_hour; /* Hora, variando de 0 a 23 */ int tm_mday; /* O dia do mês, variando de 1 até 31 */ int tm_mon; /* Mês, variando de 0 a 11 */ int tm_year; /* Desde 19Anos desde 00 */ int tm_wday; /* O dia da semana, variando de 0 a 6 */ int tm_yday; /* O dia do ano, variando de 0 a 365 */ int tm_isdst; /* Horário de Verão */ };
Se a string C gerada for menor que size caracteres (inclusive o caractere de terminação de string), retorna o número total de caracteres copiados para str (não incluindo o caractere de terminação de string), caso contrário, retorna zero.
A seguir, um exemplo demonstra o uso da função 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, "%Y-%m-%d %H:%M:%S", info); printf("Data e hora formatada : |%s|\n", buffer ); return(0); }
Vamos compilar e executar o programa acima, o que produzirá o seguinte resultado:
Data e hora formatada : |2018-09-19 08:59:07|