C/time.h: Diferenzas entre revisións

Contido eliminado Contido engadido
Gallaecio (conversa | contribucións)
Salto de liña adicional ao final.
m Bot: Cambios estética
 
Liña 10:
</source>
 
== Funcións ==
=== <code>asctime</code> ===
A función ten o seguinte [[{{BASEPAGENAME}}/Funcións#Declaración dunha función|prototipo]]:
<source lang=c>
Liña 19:
Permite converter <code>tmptr</code> nunha [[{{BASEPAGENAME}}/Cadeas de caracteres|cadea]] no formato <source lang=c enclose=none>"[día da semana] [mes] [día do mes] [horas]:[minutos]:[segundos] [ano]"</source>, onde o día da semana vai escrito en tres letras ─a primeira maiúscula─, o mes vai escrito en tres letras ─a primeira en maiúscula─ e o resto van en formato numérico. A cadea de caracteres vai seguida dun salto de liña e dun carácter nulo, o que fai un total de 26 caracteres. A cadea sinalada está aloxada en memoria de maneira estática e compártese con outra función, [[#ctime|<code>ctime</code>]], o que significa que o valor da cadea substitúese ao chamar a calquera das dúas funcións.
 
=== <code>clock</code> ===
A función ten o seguinte prototipo:
<source lang=c>
Liña 27:
Devolve a cantidade de “golpes” de reloxo que houbo dende o inicio do programa.
 
=== <code>ctime</code> ===
A función ten o seguinte prototipo:
<source lang=c>
Liña 35:
Permite converter <code>timer</code> nunha cadea no mesmo formato que en [[#asctime|<code>asctime</code>]]. A cadea sinalada está aloxada en memoria de maneira estática e compártese con <code>asctime</code>, o que significa que o valor da cadea substitúese ao chamar a calquera das dúas funcións. Ademais, <code>ctime</code> utiliza de maneira interna o mesmo ''búfer'' que utilizan [[#gmtime|<code>gmtime</code>]] e [[#localtime|<code>localtime</code>]] como valor a devolver, así que unha chamada a esta funcións substituiríao.
 
=== <code>difftime</code> ===
A función ten o seguinte prototipo:
<source lang=c>
Liña 43:
Devolve a diferencia en segundos entre as dúas datas.
 
=== <code>gmtime</code> ===
A función ten o seguinte prototipo:
<source lang=c>
Liña 51:
Converte un valor de tipo <code>time_t</code> (<code>timer</code>) nunha [[{{BASEPAGENAME}}/Estruturas|estrutura]] de tipo <code>tm</code> como data UTC. A estrutura está aloxada en memoria de maneira estática e compártena as funcións [[#ctime|<code>ctime</code>]], <code>gmtime</code> e [[#localtime|<code>localtime</code>]], o que significa que o seu valor substitúese ao chamar a calquera das funcións.
 
=== <code>gmtime_r</code> ===
A función ten o seguinte prototipo:
<source lang=c>
Liña 59:
Converte un valor de tipo <code>time_t</code> (<code>timer</code>) nunha estrutura de tipo <code>tm</code> como data UTC. A data almacénase na estrutura de tipo <code>tm</code> á que fai referencia <code>result</code>. Esta é unha versión de [[#gmtime|<code>gmtime</code>]] preparada para a programación “de varios fíos”.
 
=== <code>localtime</code> ===
A función ten o seguinte prototipo:
<source lang=c>
Liña 67:
Converte un valor de tipo <code>time_t</code> (<code>timer</code>) nunha estrutura de tipo <code>tm</code> como data local (hora no fuso horario e hemisferio correspondente). A estrutura está aloxada en memoria de maneira estática e compártena as funcións [[#ctime|<code>ctime</code>]], [[#gmtime|<code>gmtime</code>]] e <code>localtime</code>, o que significa que o seu valor substitúese ao chamar a calquera das funcións.
 
=== <code>mktime</code> ===
A función ten o seguinte prototipo:
<source lang=c>
Liña 75:
Converte <code>ptm</code> nun valor de tipo <code>time_t</code>. Ademais comproba os membros de <code>ptm</code>, axuntando os valores en caso de que estes non estean nun rango posible, incompletos ou incorrectos, e a continuación transforma a estrutura nun valor te tipo <code>time_t</code>, que é o que devolve a función. Os valores orixinais dos membros <code>tm_wday</code> (o día da semana) e <code>tm_yday</code> (o día do ano) de <code>ptm</code> ignóranse e énchense cos valores correspondentes calculados a partires da data. O rango de <code>tm_mday</code> (o día do mes) non se comproba ata determinar <code>tm_mon</code> (o mes) e <code>tm_year</code> (o ano). En caso de houber algún erro, a función devolve o valor <code>-1</code>.
 
=== <code>time</code> ===
A función ten o seguinte prototipo:
<source lang=c>
Liña 83:
Obtén a hora actual (en segundos) do reloxo do sistema, e almacena o valor na variable <code>timer</code>. En caso de que <code>timer</code> sexa un punteiro nulo, o valor non se almacena na variable, pero a función devolve dito valor igualmente.
 
=== <code>strftime</code> ===
A función ten o seguinte prototipo:
<source lang=c>
Liña 91:
Dálle a <code>tptr</code> un formato de data ou hora.
 
=== <code>strptime</code> ===
A función ten o seguinte prototipo:
<source lang=c>
Liña 99:
Busca os valores da cadea <code>buf</code> na estrutura <code>tptr</code>. En caso de atopar un, devolve un [[{{BASEPAGENAME}}/Punteiros|punteiro]] ao carácter que segue ao último carácter analizado. Se non dá atopado ningunha coincidencia, devolve o valor nulo.
 
=== <code>timegm</code> ===
A función ten o seguinte prototipo:
<source lang=c>
Liña 109:
En cuestións de '''''portabilidade''''', [[#mktime|<code>mktime</code>]] está dispoñible de maneira universal, mentres que <code>timegm</code> é pouco habitual en comparación. Para conseguir unha conversión de data UTC a data normal máis ''portable'' (aínda que non preparado para a programación de “varios fíos”), déalle o valor <code>UTC</code> á variable de ambiente <code>TZ</code>, faga unha chamada a <code>mktime</code>, e logo devólvalle a <code>TZ</code> o seu valor anterior.
 
== Claves ==
Neste ficheiro de cabeceira defínense unhas claves:
=== <code>CLK_PER_SEC</code> ===
Esta clave o número de “golpes” de reloxo por segundo. Utilízaa a función [[#clock|<code>clock()</code>]].
 
=== <code>CLOCKS_PER_SEC</code> ===
Esta clave consiste nunha denominación alternativa para [[#CLK_PER_SEC|<code>CLK_PER_SEC</code>]].
 
=== <code>CLK_TCK</code> ===
Esta é unha clave obsoleta para referirse a [[#CLK_PER_SEC|<code>CLK_PER_SEC</code>]].
 
== Tipos ==
=== <code>clock_t</code> ===
É o tipo de dato que devolve [[#clock|<code>clock()</code>]]. Adoita corresponderse cun <source lang=c enclose=none>int</source> ou un <source lang=c enclose=none>long int</source>.
 
=== <code>time_t</code> ===
É o tipo de dato que devolve [[#time|<code>time()</code>]]. Adoita corresponderse cun <source lang=c enclose=none>int</source> ou un <source lang=c enclose=none>long int</source>.
 
=== <code>struct tm</code> ===
Esta estrutura é unha forma de representación de datas, “tipo calendario”. A estrutura está formada polos seguintes membros:
 
Liña 197:
 
<!-- Categorías: -->
 
[[Categoría:C ─ Biblioteca estándar|time]]