C ++ strftime

C ++ strftime

“C ++ é uma linguagem excepcionalmente versátil sempre que se refere à execução de várias funções e à alteração de uma variável de um tipo para outro. strftime () é uma das funções que converte a data/hora na string. A matriz de string de comprimento máxima contém o resultado da função strftime (), que escreve o tempo quebrado tm pela formatação especificada. Em tempo., O objeto de tempo decomposto "tm" é implementado. Todo requisito de formatação é uma corda não inicializada que também pode conter requisitos de conversão, que têm seqüências especiais de caracteres iniciadas pelo símbolo "%" e concluídas por outro personagem chamado símbolo de identificador de conversão. O sequenciamento comum de personagens compõe todos os outros personagens especiais.”

Sintaxe da função strftime ()

A sintaxe da função strftime () é mencionada abaixo:

Existem quatro parâmetros disponíveis para a função strftime (), i.e., str, contagem, formato e tempo. De acordo com o valor de formatar, as informações de data - tempo fornecidas pelo tempo é transformado em uma corda multi-bytes não inicializada e salva na matriz identificada por str. Os dados escritos só podem estar fazendo contar bytes.

Parâmetros da função strftime ()

str: Índice em direção ao elemento inicial da matriz de string usada para manter a saída.

contar: Os mais bytes que podem ser escritos.

formatar: Endereço para uma string multi-bytes que especifica o layout da conversão e não é inicializada. O especificador de conversão (que começa com % e pode ser precedido por e ou o) e outros tipos de caracteres regulares compõem a corda formatada.

tempo: O tempo é usado para imprimir a data e a hora da saída.

Especificadores de formato na função strftime ()

Os especificadores de formato desempenham um papel importante na entrada e saída dos dados em c++. Ele serve como um mecanismo para informar o tradutor que tipo de informação está incluída em uma variável ao tomar entrada com cin () ou em saída com a função cout (). A seguir estão os especificadores de formato usados ​​na função strftime ().

Especificadores de conversão Descrição Campos usados
% Para exibir um personagem. -
n Para adicionar um personagem de nova linha. -
t Exibe os caracteres da guia horizontal. -

Tempo: Os especificadores de formato abaixo são usados ​​para representar o tempo:

Y Exibe o ano com quatro dígitos, por exemplo, 20122. tm_year
EY Exibe os quatro primeiros dígitos do ano na forma alternativa da localização. tm_year
y Exibe os dois dígitos finais do ano na faixa [00, 99]. tm_year
Oy Exibe os dois dígitos finais do ano no formato alternativo do local. tm_year
EY Exibe o ano como um deslocamento do fuso horário local %CE (dependente de localidade). tm_year
C Exibe os dois dígitos iniciais do ano no intervalo [00, 99]. tm_year
EC Exibe o nome do ano base é escrito usando a localização alternativa, tm_year
G Exibe uma década ISO de 8601 semana ou a década que inclui a semana fornecida. tm_year,

tm_wday,

tm_yday

g Exibe os dois dígitos finais de um ano ISO 8601 Week, - I.e., uma década que produz a semana definida (intervalo [00,99]). tm_year,

tm_wday,

tm_yday

Mês: O especificador de formato acima mencionado é usado o tempo exibir o tempo em C ++:

b/h Exibe o nome de um mês abreviatura, como fevereiro. tm_mon
B Exibe o nome completo do mês, como janeiro. tm_mon
Om Usa o sistema numeral alternativo da localidade para exibir o mês. tm_mon

Semana: Para exibir a semana, os especificadores de formato abaixo são usados:

você Exibe a semana do ano civil de 00 a 53 como um número numérico, i.e., O primeiro dia da semana é domingo tm_year,

tm_wday,

tm_yday

Ou Usa a abordagem decimal alternativa para representar a semana do ano como por %u. tm_year,

tm_wday,

tm_yday

C O primeiro dia da semana é segunda -feira porque a letra W representa a semana do ano como um número numérico entre 00 e 53. tm_year,

tm_wday,

tm_yday

Ow Usa a abordagem numérica alternativa para representar a semana do ano como por %w. tm_year,

tm_wday,

tm_yday

V Exibir as semanas do ano de acordo com a ISO 8601. (Range [01,53]). tm_year,

tm_wday,

tm_yday

Ov Exibe a semana do ano civil, indicado por %V, usando um esquema de numeração alternativo. tm_year,

tm_wday,

tm_yday

Dias do mês/ano:

j O dia do ano é representado por um número numérico na região [001.366]. tm_yday
d O dia do mês é representado por um número numérico no intervalo [01, 31]. tm_mday
OD Usa o método decimal alternativo para representar o dia do mês como por %d. tm_mday
e O dia do mês é representado por um número numérico com um intervalo de [1, 31]. tm_mday
OE Exibe o dia do mês empregando um sistema numérico diferente, como por %e. tm_mday

Dias da semana: os seguintes especificadores abaixo mencionados são usados ​​para exibir os dias da semana.

a Exibe o nome do dia da semana em abreviação, como sexta -feira (dependente da localidade) tm_wday
A Exibe o nome completo do dia de trabalho, como sexta -feira (dependente da localidade) tm_wday
c Especifica o dia da semana como um número numérico na faixa [0-6]. Domingo é zero. tm_wday
Ow Os dias da semana são expressos usando o sistema de numeração alternativo como por %w. tm_wday
você No padrão ISO 8601, um dia da semana é escrito como um valor numérico com segunda-feira como 1 e um espectro de [1-7]. tm_wday
Ou Usa o sistema numeral alternativo para representar o "dia da semana" como por %u. tm_wday

Segundo, minuto, hora: esses especificadores de formato abaixo em C ++ exibirão a saída em segundo, minuto e hora:

H A hora é expressa como um valor numérico com um espectro de [00,23]. tm_hour
OH Empregar o sistema numeral alternativo exibe hora como por %h. tm_hour
EU A hora é escrita como um valor numérico com um intervalo de [01,12]. tm_hour
Oi Utiliza o método numeral alternativo para representar hora como por %i. tm_hour
M Os minutos são expressos como um sistema decimal entre 00 e 59. tm_min
Om Emprega o método numeral alternativo ao escrever minutos como %m. tm_min
S Emprega o intervalo [00, 60] para o segundo como um valor decimal. tm_sec
OS O segundo é escrito como por %s ao empregar o sistema de números de solução alternativo. tm_sec

Outros especificadores de formato:

c Gera uma string de data e hora normal, como sol., OUT. 17, 04:41:13, 2010. Todos
EC Strings de data e hora alternativos específicos para localidade. Todos
x Mostra uma representação localizada da data (dependente de localidade). Todos
Ex Usa o formato de data alternativo para a localidade. Todos
X Mostra uma representação regional do tempo (dependente de localidade). Todos
EX Exibe formatos de tempo alternativos para a área. Todos
D Comparável a “%m /%d /%y” tm_mon, tm_mday, tm_year
F Semelhante a “%y-%m-%d”. tm_mon, tm_mday, tm_year
r Essas expressões representam o tempo local de 12 horas de relógio. tm_hour,

tm_min,

tm_sec

R A alternativa de "%h:%m". tm_hour,

tm_min

T A alternativa de “%h:%m:%s.” tm_hour,

tm_min,

tm_sec

P Exibe um A localizado.m. ou p.m. tm_hour
z Exibe o deslocamento do UTC no padrão ISO 8601 (por exemplo, -0545), ou talvez sem cartas se os dados do fuso horário não forem fornecidos. tm_isdst
Z Imprime um tempo local compensado da UTC no padrão ISO 8601 (por exemplo, -0545), ou mesmo sem cartas se as informações da zona local não estiverem disponíveis. tm_isdst

Valor de retorno da função strftime ()

A função strftime (), quando bem -sucedida, gera o número de bytes que foram armazenados com sucesso na matriz de char indicados por STR, excluindo o final "0". Os valores são desconhecidos e 0 é retornado se a contagem foi excedida logo antes da sequência completa ser salva.

Exemplo de função strftime ()

O código C ++ nunca pode ser executado sem arquivos de cabeçalho. Então, em primeiro lugar, adicionamos dois arquivos de cabeçalho básicos e necessários, eu.e., "tempo.h "e" iostream ". "tempo.H ”é usado para exibir a hora e a data. Ele usa "iOSteam" para entrada e saída. A função principal é definida como iniciando a execução de uma linha real de código. Ele contém os tipos de comprimento de três caracteres 50 “LOCAL_DATE_STRING, LOCAL_TIME_STRING, Current_day”. Como você pode ver, usamos “tm” para imprimir a data/hora local do país e inicializamos a variável de time_h que armazenará a hora atual.

Em seguida, a função strftime () é aplicada à variável do tipo de caractere “LOCAL_DATE_STRING, LOCAL_TIME_STRING, Current_day” para imprimir a data atual, a hora e o dia do país. Nesta função, usamos especificadores de formato diferentes. O nome completo do mês é impresso na primeira linha da função strftime () usando o operador %B, a data atual é impressa usando o operador %d e o ano de quatro dígitos é impresso usando o operador %y.

A segunda linha da função strftime (), %t é usada para imprimir o tempo integral significa horas, minutos e segundos do horário atual. E na terceira linha da função, usamos %a para imprimir o dia atual. Como você vê na ilustração abaixo, usamos "endl" no final da função strftime (); O "endl" é usado para imprimir a saída na próxima linha. Depois disso, utilizamos duas declarações "cout" para exibir a saída. Então retornamos o 0 à função principal.

É isso que o método strftime () retorna que exibe a data atual, hora e dia do país Paquistão.

Conclusão

Neste artigo, discutimos a função strftime () em C ++ para o formato Data e hora. Aprendemos 4 argumentos e especificadores de formato da função strftime (). Quando desenvolvemos aplicativos ou software, ele deve exibir o tempo e, mais importante, as informações mais pertinentes em vários formulários, conforme solicitado pelo usuário. Em seguida, empregaremos a função strftime () nesse cenário. Seu ponto de venda exclusivo é a variedade de maneiras pelas quais podemos apresentar a data e a hora usando especificadores de formato diferentes.