ctime, _ctime32, _ctime64, _wctime, _wctime32, _wctime64
Konvertiert einen Zeitwert in eine Zeichenfolge und Bereitstellen auf Einstellungen der lokalen Zeitzone ein. Sicherere Versionen dieser Funktionen sind verfügbar. Informationen dazu finden Sie unter ctime_s, _ctime32_s, _ctime64_s, _wctime_s, _wctime32_s, _wctime64_s.
char *ctime(
const time_t *timer
);
char *_ctime32(
const __time32_t *timer )
;
char *_ctime64(
const __time64_t *timer )
;
wchar_t *_wctime(
const time_t *timer
);
wchar_t *_wctime32(
const __time32_t *timer
);
wchar_t *_wctime64(
const __time64_t *timer
);
Parameter
- timer
Zeiger zu gespeicherten Zeit.
Rückgabewert
Ein Zeiger auf Zeichenfolgenergebnis. NULL wird zurückgegeben, wenn:
time stellt ein Datum vor Mitternacht am 1. Januar 1970 UTC dar.
Wenn Sie verwenden, stellt _ctime32 oder _wctime32 und time ein Datum nach 03:14 dar: Am 7. Januar 19 2038.
Wenn Sie verwenden, stellt _ctime64 oder _wctime64 und time ein Datum nach 23:59 dar: 59 3000 am 31. Dezember, UTC.
ctime ist eine Inlinefunktion, die _ctime64 ergibt und time_t in __time64_t entspricht. Wenn Sie dem Compiler erzwingen müssen, um time_t als 32-Bit- alte time_t interpretiert, können Sie _USE_32BIT_TIME_T definieren. Hierdurch wird ctime , _ctime32 auszuwerten. Dies ist nicht empfehlenswert, da Ihre Anwendung möglicherweise nach dem 18. Januar 2038 fehlschlägt, und nicht auf 64-Bit-Plattformen zulässig.
Hinweise
Die ctime-Funktion konvertiert einen Zeitwert, der als Wert time_t in eine Zeichenfolge gespeichert ist. Der Wert timer wird normalerweise von einem Aufruf von time erhalten, der die Anzahl der Sekunden zurück, die seit Mitternacht verstrichen sind (00:00: 00) am 1. Januar 1970 koordinierte Weltzeit (UTC). Die Rückgabewertzeichenfolge enthält genau 26 Zeichen und weist folgende Form:
Wed Jan 02 02:03:55 1980\n\0
Ein 24-Stunden-Format wird verwendet. Alle Felder verfügen eine konstante Breite. Das Zeilenumbruchzeichen ("\ n ") und das NULL-Zeichen ("\ 0 ") akzeptieren die letzten zwei Positionen der Zeichenfolge ein.
Die konvertierte Zeichenfolge wird auch nach den Einstellungen der lokalen Zeitzone angepasst. Siehe time, _ftime und localtime-Funktionen zu Informationen zum Konfigurieren der Ortszeit und der Funktion _tzset für Informationen über das Definieren der Zeitzonenumgebung und der globalen Variablen.
Ein Aufruf von ctime ändert den einzelnen zugeordneten statisch Puffer, der von der gmtime und localtime-Funktionen verwendet wird. Jeder Aufruf bis eine dieser Routinen zerstört das Ergebnis der vorherigen Aufrufs. ctime gibt einen statischen Puffers mit der asctime-Funktion frei. Deshalb wird ein Aufruf von ctime die Ergebnisse eines vorherigen Aufrufs von asctime, localtime oder gmtime.
_wctime und _wctime64 sind die Breitzeichen-Version von ctime und _ctime64; Zurückgeben eines Zeigers zur Zeichenfolge mit Breitzeichen. Andernfalls verhalten sich _ctime64, _wctime und _wctime64 identisch mit ctime.
Diese Funktionen überprüfen ihre Parameter. Wenn timer ein NULL-Zeiger ist oder wenn der Zeitgeberwert negativ ist, rufen diese Funktionen den ungültigen Parameterhandler auf, wie in Parametervalidierung beschrieben. Wenn die weitere Ausführung zugelassen wird, gibt diese Funktion NULL zurück und setzt errno auf EINVAL.
Zuordnung generischer Textroutinen
TCHAR.H-Routine |
_UNICODE & _MBCS nicht definiert |
_MBCS definiert |
_UNICODE definiert |
---|---|---|---|
_tctime |
ctime |
ctime |
_wctime |
_tctime32 |
_ctime32 |
_ctime32 |
_wctime32 |
_tctime64 |
_ctime64 |
_ctime64 |
_wctime64 |
Anforderungen
Routine |
Erforderlicher Header |
---|---|
ctime |
<time.h> |
_ctime32 |
<time.h> |
_ctime64 |
<time.h> |
_wctime |
<time.h oder> wchar.h <> |
_wctime32 |
<time.h oder> wchar.h <> |
_wctime64 |
<time.h oder> wchar.h <> |
Zusätzliche Informationen zur Kompatibilität finden Sie unter Kompatibilität in der Einführung.
Beispiel
// crt_ctime64.c
// compile with: /W3
/* This program gets the current
* time in _time64_t form, then uses ctime to
* display the time in string form.
*/
#include <time.h>
#include <stdio.h>
int main( void )
{
__time64_t ltime;
_time64( <ime );
printf( "The time is %s\n", _ctime64( <ime ) ); // C4996
// Note: _ctime64 is deprecated; consider using _ctime64_s
}
.NET Framework-Entsprechung
Siehe auch
Referenz
ctime_s, _ctime32_s, _ctime64_s, _wctime_s, _wctime32_s, _wctime64_s