Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Konvertera ett tidsvärde till en sträng och justera för lokala tidszonsinställningar. Säkrare versioner av dessa funktioner är tillgängliga. se ctime_s, _ctime32_s, _ctime64_s, _wctime_s, _wctime32_s, _wctime64_s.
Syntax
char *ctime( const time_t *sourceTime ); // See note in remarks section about linkage
char *_ctime32( const __time32_t *sourceTime );
char *_ctime64( const __time64_t *sourceTime );
wchar_t *_wctime( const time_t *sourceTime ); // See note in remarks section about linkage
wchar_t *_wctime32( const __time32_t *sourceTime );
wchar_t *_wctime64( const __time64_t *sourceTime );
Parameterar
sourceTime
Pekare till lagrad tid för konvertering.
Returvärde
En pekare till teckensträngsresultatet.
NULL returneras när:
sourceTimerepresenterar ett datum före midnatt, 1 januari 1970, UTC.Du använder
_ctime32eller_wctime32ochsourceTimerepresenterar ett datum efter 23:59:59 18 januari 2038, UTC.Du använder
_ctime64eller_wctime64ochsourceTimerepresenterar ett datum efter 23:59:59, 31 december 3000, UTC.
ctime är en infogad funktion som utvärderas till _ctime64och time_t motsvarar __time64_t. Om du behöver tvinga kompilatorn att tolka time_t som den gamla 32-bitars time_tkan du definiera _USE_32BIT_TIME_T. Det här makrot gör ctime att det utvärderas till _ctime32. Vi rekommenderar inte att du använder det eftersom ditt program kan misslyckas efter den 18 januari 2038 och inte tillåts på 64-bitarsplattformar.
Anmärkningar
Funktionen ctime konverterar ett tidsvärde som lagras som ett time_t värde till en teckensträng. Värdet sourceTime hämtas vanligtvis från ett anrop till time, som returnerar antalet sekunder som förflutit sedan midnatt (00:00:00), 1 januari 1970, samordnad universell tid (UTC). Returvärdesträngen innehåller exakt 26 tecken och har formuläret:
Wed Jan 02 02:03:55 1980\n\0
En 24-timmarsklocka används. Alla fält har en konstant bredd. Det nya radtecknet (\n) och nulltecknet (\0) upptar strängens två sista positioner.
Den konverterade teckensträngen justeras också enligt inställningarna för den lokala tidszonen. Information om hur du konfigurerar den lokala tiden finns i timefunktionerna , _ftimeoch localtime . Mer information om hur du definierar tidszonsmiljön och globala variabler finns i _tzset funktionen.
Ett anrop för att ctime ändra den enda statiskt allokerade bufferten gmtime som används av funktionerna och localtime . Varje anrop till någon av dessa rutiner förstör resultatet av föregående anrop.
ctime delar en statisk buffert med asctime funktionen. Därför förstör ett anrop till ctime resultatet av ett tidigare anrop till asctime, localtimeeller gmtime.
_wctime och _wctime64 är wide-character versionen av ctime och _ctime64; returnerar en pekare till wide-character sträng. I annat fall _ctime64, _wctimeoch _wctime64 beter sig identiskt med ctime.
Dessa funktioner verifierar sina parametrar. Om sourceTime är en null-pekare, eller om sourceTime värdet är negativt, anropar dessa funktioner den ogiltiga parameterhanteraren enligt beskrivningen i Parameterverifiering. Om körningen tillåts fortsätta returneras NULL funktionerna och anges errno till EINVAL.
Som standard är den här funktionens globala tillstånd begränsat till programmet. Information om hur du ändrar det här beteendet finns i Globalt tillstånd i CRT.
Anmärkning
När du använder Windows SDK version 10.0.26100.6901 och Visual Studio 2026 eller senare tillsammans och ctime_wctime inte längre static inline är (intern länkning). I stället är inline de (extern länkning).
För att återgå till det tidigare beteendet, #define _STATIC_INLINE_UCRT_FUNCTIONS=1 innan du inkluderar några CRT-huvuden. Som standard _STATIC_INLINE_UCRT_FUNCTIONS är värdet 0.
Den här ändringen ökar UCRT-överensstämmelsen med C++-standarden och förbättrar kompatibiliteten med C++-moduler.
Allmän textrutinmappning
TCHAR.H rutin |
_UNICODE och _MBCS inte definierad |
_MBCS definierad |
_UNICODE definierad |
|---|---|---|---|
_tctime |
ctime |
ctime |
_wctime |
_tctime32 |
_ctime32 |
_ctime32 |
_wctime32 |
_tctime64 |
_ctime64 |
_ctime64 |
_wctime64 |
Kravspecifikation
| Rutin | Obligatoriskt huvud |
|---|---|
ctime |
<time.h> |
_ctime32 |
<time.h> |
_ctime64 |
<time.h> |
_wctime |
<time.h> eller <wchar.h> |
_wctime32 |
<time.h> eller <wchar.h> |
_wctime64 |
<time.h> eller <wchar.h> |
Mer kompatibilitetsinformation finns i Kompatibilitet.
Example
// 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
}
The time is Wed Feb 13 16:04:43 2002
Se även
Tidshantering
asctime, _wasctime
ctime_s, _ctime32_s, _ctime64_s, _wctime_s, , _wctime32_s, _wctime64_s
_ftime, , _ftime32_ftime64
gmtime, , _gmtime32_gmtime64
localtime, , _localtime32_localtime64
time, , _time32_time64