Provided by: manpages-pl-dev_4.23.1-1_all bug

NAZWA

       time - pobiera czas w sekundach

BIBLIOTEKA

       Standardowa biblioteka C (libc, -lc)

SKŁADNIA

       #include <time.h>

       time_t time(time_t *_Nullable tloc);

OPIS

       time() zwraca czas jako liczbę sekund od Epoki, tj. 1970-01-01 00:00:00 +0000 (UTC).

       Jeśli  tloc  nie  jest  równe  NULL, to zwracana wartość jest również zapisywana w pamięci
       wskazywanej przez tloc.

WARTOŚĆ ZWRACANA

       W przypadku pomyślnego zakończenia, zwracana jest wartość liczbowa dla czasu  w  sekundach
       od Epoki. W przypadku błędu, zwracane jest ((time_t) -1) i ustawiane errno wskazując błąd.

BŁĘDY

       EOVERFLOW
              Czas  ten  nie może być reprezentowany jako wartość time_t. Błąd może wystąpić, gdy
              plik wykonywalny z 32-bitowym  time_t  działa  na  64-bitowym  jądrze,  a  czas  to
              2038-01-19  03:14:08  UTC  lub  później.  Jednakże,  gdy  czas  systemowy jest poza
              zakresem time_t w innych sytuacjach, to zachowanie jest niezdefiniowane.

       EFAULT tloc wskazuje poza dostępną dla użytkownika przestrzeń adresową (ale zob. BŁĘDY).

              W systemach, w  których  funkcja  opakowująca  time()  z  biblioteki  C  przywołuje
              implementację  zapewnianą przez vdso(7) (czyli bez pułapki do jądra), nieprawidłowy
              adres może zamiast tego wyzwolić sygnał SIGSEGV.

WERSJE

       POSIX.1 definiuje liczbę sekund od Epoki jako wzór, który  w  sposób  przybliżony  oblicza
       liczbę  sekund  pomiędzy  zadanym  czasem  a  Epoką.  Wzór  ten  bierze pod uwagę fakt, że
       wszystkie lata podzielne przez 4 są przestępne, lecz lata, które są  podzielne  przez  100
       nie  są  latami  przestępnymi  chyba,  że  są  podzielne  również przez 400, gdy są jednak
       przestępne. Wartość ta nie jest tym samym, co rzeczywista liczba sekund  pomiędzy  zadanym
       czasem a Epoką, gdyż istnieją sekundy przestępne oraz zegary nie muszą być synchronizowane
       z czasem standardowym. Systemy Linux zwykle przestrzegają wymagania POSIX, że  wartość  ta
       ma ignorować sekundy przestępne, dzięki czemu zgodne systemy spójnie ją interpretują; zob.
       POSIX.1-2018 Rationale A.4.16.

       Aplikacje, które mogą działać po roku 2038, powinny używać ABI z time_t  szerszym  niż  32
       bity; zob. time_t(3type).

   Różnice biblioteki C/jądra
       Na niektórych architekturach, implementacja time() jest zapewniona w vdso(7).

STANDARDY

       C11, POSIX.1-2008.

HISTORIA

       SVr4, 4.3BSD, C89, POSIX.1-2001.

USTERKI

       Błędy  zwracane  przez  to wywołanie systemowe są nierozróżnialne od pomyślnego zgłoszenia
       czasu będącego kilka sekund przed Epoką, dlatego funkcja opakowująca z biblioteki C  nigdy
       nie ustawia errno jako wyniku tego wywołania.

       Argument  tloc  wychodzi  z użycia i w nowym kodzie zawsze powinien wynosić NULL. Gdy tloc
       wynosi NULL, wywołanie nie może zawieść.

ZOBACZ TAKŻE

       date(1), gettimeofday(2), ctime(3), ftime(3), time(7), vdso(7)

TŁUMACZENIE

       Autorami  polskiego  tłumaczenia  niniejszej  strony   podręcznika   są:   Przemek   Borys
       <pborys@dione.ids.pl>,  Andrzej  Krzysztofowicz <ankry@green.mf.pg.gda.pl> i Michał Kułach
       <michal.kulach@gmail.com>

       Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe  informacje  o  warunkach  licencji
       można   uzyskać   zapoznając   się   z   GNU   General   Public   License   w   wersji   3
       ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩  lub  nowszej.  Nie   przyjmuje   się   ŻADNEJ
       ODPOWIEDZIALNOŚCI.

       Błędy  w  tłumaczeniu  strony  podręcznika  prosimy  zgłaszać  na  adres listy dyskusyjnej
       ⟨manpages-pl-list@lists.sourceforge.net⟩.