“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.