Freigeben über


ctime_s, _ctime32_s, _ctime64_s, _wctime_s, _wctime32_s, _wctime64_s

Konvertiert einen Zeitwert in eine Zeichenfolge und erstellen auf Einstellungen der lokalen Zeitzone ein.Dies sind Versionen von ctime, _ctime64, _wctime, _wctime64 mit beschrieben, wie unter Security Enhancements in Sicherheitsfeatures im 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

Parameter

  • [out] buffer
    Dieser Wert muss groß genug sein, 26 Zeichen enthalten.Ein Zeiger auf den Zeichenfolgen oder NULLErgebnis:

    • time stellt ein Datum vor Mitternacht UTC am 1. Januar 1970 dar.

    • Wenn Sie verwenden, stellt _ctime32_s oder _wctime32_s und time ein Datum nach 03:14 an: Am 7. Januar 19 2038.

    • Wenn Sie verwenden, stellt _ctime64_s oder _wctime64_s und time ein Datum nach 23:59 an: 59 3000 am 31. Dezember, UTC.

    • Wenn Sie _ctime_s oder _wctime_sverwenden, sind diese Funktionen Wrapper zu den vorherigen Funktionen.Weitere Informationen finden Sie im Abschnitt Hinweise.

  • [in] numberOfElements
    Die Größe des Puffers.

  • [in] time
    Zeiger auf gespeicherten Zeit.

Rückgabewert

Beliebige wenn der Vorgang erfolgreich war.Wenn ein Fehler aufgrund eines ungültigen Parameters ungültige Parameter vorhanden sind, wird der Ereignishandler aufgerufen, wie in Parametervalidierungbeschrieben.Wenn die Ausführung zulässig ist, um fortzufahren, wird ein Fehlercode zurückgegeben.Fehlercodes werden in ERRNO.H definiert. für Listen dieser Fehler finden Sie unter errno.Die eigentlichen Fehlercode, die für jeden Fehlerzustand ausgelöst werden, werden in der folgenden Tabelle dargestellt.

Fehlerbedingungen

buffer

numberOfElements

time

Return

Wert in buffer

NULL

alle

alle

EINVAL

Nicht geändert

Nicht NULL (Zeigt auf den gültigen Arbeitsspeicher)

0

alle

EINVAL

Nicht geändert

Nicht NULL

0< Größe < 26

alle

EINVAL

Leere Zeichenfolge

Nicht NULL

>= 26

NULL

EINVAL

Leere Zeichenfolge

Nicht NULL

>= 26

< 0

EINVAL

Leere Zeichenfolge

Hinweise

Die ctime_s-Funktion konvertiert einen Uhrzeitwert, der als time_t Struktur in eine Zeichenfolge gespeichert wird.Der time-Wert wird normalerweise bei einem Aufruf von Zeitabgerufen, der die Anzahl der Sekunden verstrich seit Mitternacht (00:00: Zurückgebenam 1. Januar 1970 00) koordinierte Weltzeit (UTC).Der Rückgabewert enthält die Zeichenfolge genau 26 Zeichen und besitzt das Format:

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

Ein 24-Stunden-Format wird verwendet.Alle Felder verfügen über eine konstante Breite.Das Zeilenumbruchzeichen („\ n ") und das NULL-Zeichen („\ 0 ") die letzten beiden Positionen der Zeichenfolge ein.

Die konvertierte Zeichenfolge wird ebenfalls entsprechend den Einstellungen der lokalen Zeitzone passt.Weitere Informationen finden Sie unter time, _ftimeund Funktionen localtime32_s Informationen zum Konfigurieren der lokale Zeit und die Funktion _tzset Informationen zum Definieren der Zeitzonen Umgebungen und der globalen Variablen.

_wctime32_s und _wctime64_s sind die Breitzeichen-Version von _ctime32_s und _ctime64_s. einen Zeiger auf eine Zeichenfolge mit Breitzeichen zurückgeben.Andernfalls verhalten sich _ctime64_s, _wctime32_sund _wctime64_s identisch mit _ctime32_s.

ctime_s ist eine Inlinefunktion, die _ctime64_s auswertet und time_t zu __time64_tentspricht.Wenn Sie den Compiler erzwingen müssen, um alte als time_t 32-Bit- time_tinterpretiert wird, können Sie _USE_32BIT_TIME_Tdefinieren.Auf diese Weise wird ctime_s , _ctime32_sauszuwerten.Dies wird nicht empfohlen, da die Anwendung möglicherweise nach dem 18. Januar 2038 fehlschlägt, und sie wird nicht auf 64-Bit-Plattformen nicht zulässig.

In C++ unter Verwendung dieser Funktionen wird von Vorlagen Operatoren vereinfacht. Überladungen können die Pufferlänge automatisch ableiten und die Notwendigkeit mehr, ein Größen - Argument angegeben wird.Weitere Informationen finden Sie unter Speichern Sie Vorlagen-Überladungen.

Zuweisung generischer Textroutinen

TCHAR.H-Routine

_UNICODE & _MBCS nicht definiert

_MBCS definieren

_UNICODE definiert

_tctime_s

ctime_s

ctime_s

_wctime_s

_tctime32_s

_ctime32_s

_ctime32_s

_wctime32_s

_tctime64_s

_ctime64_s

_ctime64_s

_wctime64_s

Anforderungen

Routine

Erforderlicher Header

ctime_s,

_ctime32_s,

_ctime64_s

<time.h>

_wctime_s,

_wctime32_s,

_wctime64_s

<time.h> oder <wchar.h>

Um Kompatibilität zusätzlichen Informationen finden Sie unter Kompatibilität in der Einführung.

Bibliotheken

Alle Versionen Cs.

Beispiel

// 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 );
}

Beispielausgabe

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

.NET Framework-Entsprechung

Siehe auch

Referenz

Zeit-Verwaltung

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

Zeit, _time32, _time64