Provided by: manpages-pt-dev_20040726-4_all bug

NOME

       strftime - formata data e hora

SINOPSE

       #include <time.h>

       size_t strftime(char *s, size_t max, const char *format,
                           const struct tm *tm);

DESCRI,C~AO

       A  funcao  strftime()  formata  a  hora  quebrada  tm  de  acordo com a
       especificacao de formato format e  coloca  o  resultado  na  matriz  de
       caracteres s de tamanho max.

       Caracteres  ordinarios colocados na string de formato sao copiados para
       s sem conversao. Especificadores de conversao sao introduzidos  por  um
       caractere '%' , e sao substituidos em s da seguinte forma:

       %a     O dia da semana abreviado, de acordo com o 'locale' corrente.

       %A     O dia da semana completo, de acordo com o 'locale' corrente.

       %b     O mes abreviado, de acordo com o 'locale' corrente.

       %B     O mes completo, de acordo com o 'locale' corrente.

       %c     A  representacao  de  data  e  hora  preferida  para  o 'locale'
              corrente.

       %C     O numero de seculo (ano/100), com tipo  inteiro  de  2  digitos.
              (SU)

       %d     O dia do mes, com tipo numerico decimal (faixa de 01 a 31).

       %D     Equivalente  a %m/%d/%y. (Yecch - somente para norte-americanos.
              Norte-americanos devem notar que, em outros paises,  %d/%m/%y  e
              de  um tanto comum. Isto significa que no contexto internacional
              este formato e ambiguo e nao deve ser usado.) (SU)

       %e     Como %d, o dia do mes em formato numerico decimal, mas  um  zero
              inicial e substituido por um espaco. (SU)

       %E     Modificador: usa formato alternativo, veja abaixo. (SU)

       %G     O  ano  ISO 8601, com seculo no formato numerico decimal.  O ano
              de 4 digitos correspondente ao numero da semana ISO  (veja  %V).
              Este  tem  o mesmo formato e valor que %y, exceto se o numero da
              semana ISO pertence ao ano anterior ou posterior, neste  caso  o
              ano e usado no lugar. (TZ)

       %g     Como  %G,  mas  sem  o  seculo,  isto e, com um ano de 2 digitos
              (00-99). (TZ)

       %h     Equivalente a %b. (SU)

       %H     A hora como um numero deciaml, usando um  relogio  de  24  horas
              (faixa de 00 a 23).

       %I     A  hora  como  um  numero decimal, usando um relogio de 12 horas
              (faixa de 01 a 12).

       %j     O dia do ano como um numero decimal (faixa de 001 a 366).

       %k     A hora (relogio de 24 horas) como um numero decimal (faixa de  0
              a  23); digitos isolados sao precedidos por um espaco em branco.
              (Veja tambem %H.) (TZ)

       %l     A hora (relogio de 12 horas) como um numero decimal (faixa de  1
              a  12); digitos isolados sao precedidos por um espaco em branco.
              (Veja tambem %I.) (TZ)

       %m     O mes como um numero decimal (faixa de 01 a 12).

       %M     O minuto como um numero decimal (faixa de 00 a 59).

       %n     Um caractere de nova linha. (SU)

       %O     Modificador: usa formato alternativo, veja abaixo. (SU)

       %p     correspondente para o 'locale' corrente. O  meio-dia  e  tratado
              como 'pm', e a meia-noite como 'am'.

       %P     Como  %p,  mas  em letras minusculas: 'am' ou 'pm' ou uma string
              correspeondente para o 'locale' corrente. (GNU)

       %r     A hora na notacao a.m. ou  p.m..   No  'locale'  POSIX,  isto  e
              equivalente a '%I:%M:%S %p'. (SU)

       %R     A  hora  da  notacao  de  24 horas (%H:%M). (SU) Para uma versao
              incluindo os segundos, veja %T abaixo.

       %s     O numero de segundos desde 1970-01-01 00:00:00 UTC. (TZ)

       %S     Os segundos como um numero decimal (faixa de 00 a 61).

       %t     Um caractere de tabulacao. (SU)

       %T     A hora na notacao de 24 horas (%H:%M:%S). (SU)

       %u     O dia da semana como um decimal, na faixa de  1  a  7,  segunda-
              feira e 1.  Veja tambem %w. (SU)

       %U     O  numero  da semana no ano corrente, como um numero decimal, na
              faixa de 00 a 53, comecando  com  o  primeiro  domingo  sendo  o
              primeiro dia da semana 01. Veja tambem %V e %W.

       %V     O numero da semana ISO 8601:1988 no ano corrente, como um numero
              decimal, na faixa de 01 a 53, onde  a  semana  1  e  a  primeira
              semana  que  tem  pelo  menos  4  dias no ano corrente, e com um
              domingo no inicio da semana.  Veja tambem %U e %W. (SU)

       %w     O dia da semana como um decimal, na faixa  de  0  a  6,  domingo
              sendo 0.  Veja tambem %u.

       %W     O  numero  da  semana do ano corrente como um numero decimal, na
              faixa de 00 a 53, comecando  com  o  primeiro  domingo  sendo  o
              primeiro dia da semana 01.

       %x     A  representacao preferida de data para o 'locale' corrente, sem
              a hora.

       %X     A representacao de hora preferida para o 'locale' corrente,  sem
              a data.

       %y     O ano como um numero decimal, sem o seculo (faixa de 00 a 99).

       %Y     O ano como um numero decimal, incluindo o seculo.

       %z     O  fuso  horario  como  compensacao de hora para GMT.  Requerido
              para emitir datas conforme  a  RFC822  (usando  "%a,  %d  %b  %Y
              %H:%M:%S %z"). (GNU)

       %Z     O fuso, nome ou abreviacao de hora.

       %+     A data e a hora no formato date(1). (TZ)

       %%     Um caractere literal '%'.

       Alguns   especificadores   de   conversao   podem  ser  modificados  ao
       precede-los pelos modificadores E ou O  para  indicar  que  um  formato
       alternativo  deve ser usado.  Se o formato ou especificacao alternativo
       nao existe para o 'locale' corrente, o comportamento sera como se fosse
       usada a especificacao de conversao nao-modificada. (SU) A Especificacao
       Exclusiva do Unix menciona %Ec, %EC, %Ex, %EX, %Ry, %EY, %Od, %Oe, %OH,
       %OI,  %Om,  %OM,  %OS,  %Ou,  %OU, %OV, %Ow, %OW, %Oy, onde o efeito do
       modificador O e  usar  simbolos  numericos  alternativos  (quer  dizer,
       numerais romanos), e o efeito do modificador E e usar uma representacao
       dependente de 'locale' alternativa.

       A estrutura de hora quebradatm e definida  em  <time.h>.   Veja  tambem
       ctime(3).

VALOR DE RETORNO

       A  funcao strftime() retorna o numero de caracteres colocados na matriz
       s, nao  incluindo  o  caractere  terminal  NUL,  provided  the  string,
       including  the terminating NUL, fits.  Caso contrario, ele retorna 0, e
       o conteudo da matriz e indefinido.  (E assim pelo menos  desde  a  libc
       4.4.4;   versoes  muito  antigas  da  libc,  tal  como  a  libc  4.4.1,
       retornariam max se a matriz fosse muito pequena.)

       Note que o valor de retorno 0 nao indica necessariamente um  erro;  por
       exemplo, em muitos 'locales' %p produz uma string vazia.

AMBIENTE

       As variaveis de ambiente TZ e LC_TIME sao usadas.

CONFORME

       ANSI  C,  SVID  3, ISO 9899.  Ha inclusoes estritas entre o conjunto de
       conversoes  dadas  em  C  ANSI  (nao  marcadas),   aquelas   dadas   na
       Especificacao  Exclusiva  do  Unix  (marcadas por SU), aquelas dadas no
       pacote de fusos horarios de Olson (marcadas por TZ), e aquelas dadas em
       glibc  (marcadas por GNU), exceto que %+ nao e suportado na glibc2. Por
       outro lado, a glibc2 tem varias outras extensoes.  POSIX.1 so se refere
       ao  C  ANSI; POSIX.2 descreve sob date(1) varias extensoes que poderiam
       se aplicar ao strftime tambem.

VEJA TAMB'EM

       date(1), time(2), ctime(3), setlocale(3), sprintf(3)

TRADU,C~AO PARA A L'INGUA PORTUGUESA

       RUBENS DE JESUS  NOGUEIRA  <darkseid99@usa.net>  (traduAEo)  XXXXXX  XX
       XXXXX XXXXXXXX <xxxxxxxxxx@xxx.xxx> (revisAEo)

GNU                           29 de marco de 1999                  STRFTIME(3)