1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264
|
.\" Copyright 1993 Mitchum DSouza <m.dsouza@mrc-apu.cam.ac.uk>
.\"
.\" Permission is granted to make and distribute verbatim copies of this
.\" manual provided the copyright notice and this permission notice are
.\" preserved on all copies.
.\"
.\" Permission is granted to copy and distribute modified versions of this
.\" manual under the conditions for verbatim copying, provided that the
.\" entire resulting derived work is distributed under the terms of a
.\" permission notice identical to this one
.\"
.\" Since the Linux kernel and libraries are constantly changing, this
.\" manual page may be incorrect or out-of-date. The author(s) assume no
.\" responsibility for errors or omissions, or for damages resulting from
.\" the use of the information contained herein. The author(s) may not
.\" have taken the same level of care in the production of this manual,
.\" which is licensed free of charge, as they might when working
.\" professionally.
.\"
.\" Formatted or processed versions of this manual, if unaccompanied by
.\" the source, must acknowledge the copyright and authors of this work.
.\"
.\" Modified, jmv@lucifer.dorms.spbu.ru, 1999-11-08
.\" Modified, aeb, 2000-04-07
.\"
.TH STRPTIME 3 "26 de setembro de 1994" "GNU" "Manual do Programador Linux"
.SH NOME
strptime \- converte uma representao de hora do tipo string para uma estrutura de hora tm
.SH SINOPSE
.B #include <time.h>
.sp
.BI "char *strptime(const char *" s ", const char *" formato ,
.BI "struct tm *" tm );
.SH DESCRIO
.LP
.IX "funo strptime" "" "\fLstrptime()\fP \(em converso de data e hora"
.B strptime(\|)
a funo complementar a
.B strftime(\|)
e converte a string de caracteres apontada por
.I s
para valores que so armazenadas na estrutura
.B tm
apontada por
.IR tm ,
usando o formato especificado pelo
.IR formato .
Aqui o
.I formato
uma string de caracteres que consiste de descritores de campo e caracteres de texto,
reminiscentes do
.BR scanf (3).
Cada descritor de campo consiste de um caractere
.B %
seguido por outros caracteres que especificam a sustituio para o descritor de campo.
Todos os outros caracteres na string
.I formato
devem ter um caractere que combine na string de entrada. Excees
so os espaos em branco na string de formato que podem casar com zero ou mais
espaos em branco na string de entrada.
.PP
A funo \fBstrptime()\fP processa a string de entrada da direita para a esquerda.
Cada um dos trs elementos de entrada possveis (espao em branco, literal ou formato)
so manipulados um aps o outro. Se a entrada no pode ser casada com a string de
formato, a funo pra. O restante das strings de formato e de entrada no so processadas.
.PP
Os seguintes descritores de campo so suportados:
.TP
.B %%
o caractere
.B %
.TP
.BR %a " ou " %A
dia da semana, usando os nomes dos dias da semana do 'locale'; pode ser especificado o nome
abreviado ou completo
.TP
.BR %b " ou " %B " ou " %h
ms, usando o nome de ms do 'locale'; pode ser especificado o nome abreviado ou completo
.TP
.B %c
data e hora como %x %X
.TP
.B %C
data e hora, na representao de data e hora em formato longo do 'locale'
.TP
.BR %d " or " %e
dia do ms (1-31; zeros esquerda so permitidos mas no requeridos)
.TP
.B %D
data como %m/%d/%y
.TP
.BR %H " or " %k
hora (0-23; zeros esquerda so permitidos mas no requeridos)
.PD
.TP
.BR %I " or " %l
hora (0-12; zeros esquerda so permitidos mas no requeridos)
.PD
.TP
.B %j
nmero do dia do ano (001-366)
.TP
.B %m
nmero do ms (1-12; zeros esquerda so permitidos mas no requeridos)
.TP
.B %M
minutos (0-59; zeros esquerda so permitidos mas no requeridos)
.TP
.B %p
equivalente do 'locale' ao
.SM AM
ou
.SM PM
.TP
.B %r
hora como %I:%M:%S %p
.TP
.B %R
hora como %H:%M
.TP
.B %S
segundos (0-61; zeros esquerda so permitidos mas no requeridos. O segundo extra
permitido para anos bissextos)
.TP
.B %T
hora como %H:%M:%S
.TP
.B %w
nmero do dia da semana (0-6) com o domindo sendo o primeiro dia da semana
.TP
.B %x
data, usando o formato de data do 'locale'
.TP
.B %X
hora, usando o formato de hora do 'locale'
.TP
.B %y
ano dentro do sculo (0-99; zeros esquerda so permitidos mas no requeridos.
Caso um sculo no seja especificado, os valores na faixa de 69 a 99 se referem
aos anos no sculo XX (1969 a 1999 inclusive); valores na faixa de 00 a 68 se
referem aos anos no sculo XXI (2000 a 2068 inclusive).
.TP
.B %Y
ano, incluindo o sculo (por exemplo, 1988)
.LP
Maisculas e minsculas so ignoradas ao encontrar itens como nomes de meses ou dias da semana.
.LP
Alguns descritores de campo podem ser modificados pelos caracteres modificadores E
e O para indicar que um formato ou uma especificao alternativa devem ser usados.
Se o formato ou a especificao alternativa no existem no 'locale' corrente, so
usados os descritores de campo no modificados.
.LP
O modificador E especifica que a string de entrada pode conter verses alternativas
da representao de data e hora que so dependentes do 'locale':
.TP
.B %Ec
a representao alternativa de data e hora do 'locale'.
.TP
.B %EC
o nome do ano base (perodo) na representao alternativa do 'locale'.
.TP
.B %Ex
a representao alternativa de data do 'locale'.
.TP
.B %EX
a representao alternativa de hora do 'locale'.
.TP
.B %Ey
a compensao do %EC (somente o ano) na representao alternativa do 'locale'.
.TP
.B %EY
a representao alternativa completa do ano.
.LP
O modificador O especifica que a entrada numrica pode estar em um formato
alternativo dependente do 'locale':
.TP
.BR %Od " or " %Oe
o dia do ms usando os smbolos numricos alternativos do 'locale'; zeros esquerda
so permitidos mas no requeridos.
.TP
.B %OH
a hora (relgio de 24 horas) usnado os smbolos numricos alternativos do 'locale'.
.TP
.B %OI
a hora (relgio de 12 horas) usando os smbolos numricos alternativos do 'locale'.
.TP
.B %Om
o ms usando os smbolos numricos alternativos do 'locale'.
.TP
.B %OM
os minutos usando os smbolos numricos alternativos do 'locale'.
.TP
.B %OS
os segundos usando os smbolos numricos alternativos do 'locale'.
.TP
.B %OU
o nmero da semana do ano (domingo como o primeiro dia da semana) usando os smbolos
numricos alternativos do 'locale'.
.TP
.B %Ow
o nmero do dia da semana (domingo=0) usando os smbolos numricos alternativos do 'locale'.
.TP
.B %OW
o nmero da semana do ano (segunda-feira como o primeiro dia da semana) usando os
smbolos numricos alternativos do 'locale'.
.TP
.B %Oy
o ano (compensao de %C) usando os smbolos numricos alternativos do 'locale'.
.LP
A estrutura de horas quebrada \fItm\fP definida em \fI<time.h>\fP
como segue:
.sp
.RS
.nf
.ne 12
.ta 8n 16n 32n
struct tm
{
int tm_sec; /* segundos */
int tm_min; /* minutos */
int tm_hour; /* horas */
int tm_mday; /* dia do ms */
int tm_mon; /* ms */
int tm_year; /* ano */
int tm_wday; /* dia da semana */
int tm_yday; /* dia do ano */
int tm_isdst; /* horrio de vero */
};
.ta
.fi
.RE
.SH "VALOR DE RETORNO"
O valor de retorno de uma funo um ponteiro para o primeiro caractere no processado
nesta chamada de funo. Caso a string de entrada contenha mais caracteres que o
requerido pela string de formato, o valor de retorno aponta logo depois do ltimo
caractere de entrada consumido. No caso em que a string de entrada inteira seja
consumida, o valor de retorno aponta para o byte NUL no final da string. Se
\fBstrptime()\fP falha em encontrar toda a string de formato, e portanto ocorre um erro,
a funo retorna \fBNULL\fP.
.SH "VEJA TAMBM"
.BR strftime "(3), " time "(2), " setlocale "(3), " scanf (3)
.SH NOTAS
.LP
A princpio, esta funo no inicializa \fBtm\fP, mas apenas armazena os valores
especificados. Isto significa que \fBtm\fP deve ser inicializado antes da chamada.
Detalhes diferem um pouco entre diferentes sistemas Unix. A implementao da libc
GNU no toca naqueles campos que no so especificados explicitamente, exceto por
recomputar os campos
.IR tm_wday
e
.IR tm_yday
se qualquer um dos elementos ano, ms ou dia mudaram.
.PP
Esta funo disponvel somente em bibliotecas mais recentes que a verso 4.6.5.
As incluses da libc4 e da libc5 do Linux definem o prottipo incondicionalmente;
a incluso glibc2 fornece um prottipo somente quando _XOPEN_SOURCE ou _GNU_SOURCE
so definidos.
Os caracteres modificadores de 'locale' E e O so aceitos desde a libc 5.4.13.
A especificao 'y' (ano no sculo) tomada para especificar um ano no sculo XX
na libc4 e na libc5. Ser um ano na faixa de 1950 a 2049 pela glib2.0, e um ano na
faixa de 1969 a 2068 pela glibc2.1.
.SH TRADUO PARA A LNGUA PORTUGUESA
\&\fR\&\f(CWRUBENS DE JESUS NOGUEIRA <darkseid99@usa.net> (traduo)\fR
\&\fR\&\f(CWXXXXXX XX XXXXX XXXXXXXX <xxxxxxxxxx@xxx.xxx> (reviso)\fR
|