Sdílet prostřednictvím


ctime_s, _ctime32_s, _ctime64_s, _wctime_s, _wctime32_s, _wctime64_s

Časové hodnoty převést na řetězec a upravit nastavení zóny Místní čas.Tyto verze jsou ctime, _ctime64, _wctime, _wctime64 s vylepšení zabezpečení popsaným v Funkce zabezpečení v CRT.

errno_t ctime_s( 
   char* buffer,
   size_t numberOfElements,
   const time_t *time 
);
errno_t _ctime32_s( 
   char* buffer,
   size_t numberOfElements,
   const __time32_t *time 
);
errno_t _ctime64_s( 
   char* buffer,
   size_t numberOfElements,
   const __time64_t *time )
;
errno_t _wctime_s( 
   wchar_t* buffer,
   size_t numberOfElements,
   const time_t *time 
);
errno_t _wctime32_s( 
   wchar_t* buffer,
   size_t numberOfElements,
   const __time32_t *time 
);
errno_t _wctime64_s( 
   wchar_t* buffer,
   size_t numberOfElements,
   const __time64_t *time 
);
template <size_t size>
errno_t _ctime32_s( 
   char (&buffer)[size],
   const __time32_t *time 
); // C++ only
template <size_t size>
errno_t _ctime64_s( 
   char (&buffer)[size],
   const __time64_t *time
); // C++ only
template <size_t size>
errno_t _wctime32_s( 
   wchar_t (&buffer)[size],
   const __time32_t *time 
); // C++ only
template <size_t size>
errno_t _wctime64_s( 
   wchar_t (&buffer)[size],
   const __time64_t *time 
); // C++ only

Parametry

  • [výstup]buffer
    Musí být dostatečně velké pro uložení 26 znaků.Ukazatel na výsledek řetězec znaků, nebo NULLpokud:

    • timepředstavuje datum před ČASEM půlnoc 1. ledna 1970.

    • Používáte-li _ctime32_s nebo _wctime32_s a time představuje datum po 03: 14: 07 01.01.08 19.

    • Používáte-li _ctime64_s nebo _wctime64_s a time představuje datum po 23: 59: 59, do 31. prosince 3000 UTC.

    • Používáte-li _ctime_s nebo _wctime_s, tyto funkce jsou obaly předchozích funkcí.V části poznámky.

  • [v]numberOfElements
    Velikost vyrovnávací paměti.

  • [t v]ime
    Ukazatel času uložené.

Vrácená hodnota

Nula, pokud je úspěšná.Pokud selhání kvůli neplatný parametr je vyvoláno neplatný parametr popisovače, jak je popsáno v Ověření parametrů.Pokud je povoleno spuštění pokračovat, je vrácena kód chyby.Kódy chyb jsou definovány v kód chyby.H; seznam těchto chyb naleznete v kód chyby.V následující tabulce jsou uvedeny kódy skutečných chyb vyvolaných pro každou podmínku chyby.

Chybové podmínky

buffer

numberOfElements

time

Vrátit

Hodnota vbuffer

NULL

žádné

žádné

EINVAL

Nezměněno

Není NULL (odkazuje na platný paměti)

0

žádné

EINVAL

Nezměněno

NeníNULL

0 < velikost < 26

žádné

EINVAL

Prázdný řetězec

NeníNULL

> = 26

NULL

EINVAL

Prázdný řetězec

NeníNULL

> = 26

< 0

EINVAL

Prázdný řetězec

Poznámky

ctime_s Funkce převede hodnotu času uloženy jako time_t struktury do řetězce znaků.time Hodnota je obvykle získán z volání čas, která vrátí počet sekund uplynulých od půlnoci (00: 00), 1. ledna 1970, koordinovaný světový čas (UTC).Vrácená hodnota řetězce obsahuje přesně 26 znaků a má tvar:

Wed Jan 02 02:03:55 1980\n\0

Používá se 24 hodin.Všechna pole mají konstantní šířce.Znak nového řádku (\n) a znakem null (\0) zaujímají dvě poslední pozice řetězce.

Řetězec znaků převedeného také upravena podle nastavení zóny Místní čas.Najdete time, _ftime, a localtime32_s funkce informace o konfiguraci místního času a _tzset funkce informace o definování časové pásmo prostředí a globální proměnné.

_wctime32_sa _wctime64_s verzi celého znaků jsou _ctime32_s a _ctime64_s; ukazatel vrácení celého znakový řetězec.Otherwise, _ctime64_s, _wctime32_s, and _wctime64_s behave identically to _ctime32_s.

ctime_svložené funkce, jejíž výsledkem je _ctime64_s a time_t je ekvivalentní __time64_t.Chcete-li vynutit kompilátor interpretace time_t jako staré 32-bit time_t, můžete definovat _USE_32BIT_TIME_T.Tím dojde k ctime_s k vyhodnocení _ctime32_s.Nedoporučuje se, protože aplikace může selhat po 18 01.01.08, a není povoleno na 64bitových platformách.

V jazyce C++ použití těchto funkcí je zjednodušeno díky šablony přetížení; přetížení lze odvodit vyrovnávací paměti automaticky, není tedy třeba zadat argument velikost.Další informace naleznete v tématu Přetížení šablony zabezpečení.

Obecný Text rutinní mapování

TCHAR.Rutina H

_UNICODE & _MBCS není definován

_MBCS, definice

_UNICODE, definice

_tctime_s

ctime_s

ctime_s

_wctime_s

_tctime32_s

_ctime32_s

_ctime32_s

_wctime32_s

_tctime64_s

_ctime64_s

_ctime64_s

_wctime64_s

Požadavky

Rutina

Požadované záhlaví

ctime_s,

_ctime32_s,

_ctime64_s

<time.h>

_wctime_s,

_wctime32_s,

_wctime64_s

<time.h> nebo <wchar.h>

Další informace o kompatibilitě, viz Compatibility v úvodu.

Knihovny

Všechny verze C Runtime knihovny.

Příklad

// crt_wctime_s.c
/* This program gets the current
 * time in time_t form and then uses _wctime_s to
 * display the time in string form.
 */

#include <time.h>
#include <stdio.h>

#define SIZE 26

int main( void )
{
   time_t ltime;
   wchar_t buf[SIZE];
   errno_t err;

   time( &ltime );

  
   err = _wctime_s( buf, SIZE, &ltime );
   if (err != 0)
   {
      printf("Invalid Arguments for _wctime_s. Error Code: %d\n", err);
   }
   wprintf_s( L"The time is %s\n", buf );
}

Vzorový výstup

The time is Fri Apr 25 13:03:39 2003

Ekvivalent v rozhraní .NET Framework

Viz také

Referenční dokumentace

Aplikace Správa času

asctime_s _wasctime_s

ctime, _ctime32, _ctime64, _wctime, _wctime32, _wctime64

_ftime, _ftime32, _ftime64

gmtime_s, _gmtime32_s, _gmtime64_s

localtime_s, _localtime32_s, _localtime64_s

time, _time32, _time64