ctime、_ctime32、_ctime64、_wctime、_wctime32、_wctime64ctime, _ctime32, _ctime64, _wctime, _wctime32, _wctime64

時刻値を文字列に変換し、ローカルの時間帯設定に合わせて調整します。Convert a time value to a string and adjust for local time zone settings. これらの関数には、より安全なバージョンがあります。「ctime_s、_ctime32_s、_ctime64_s、_wctime_s、_wctime32_s、_wctime64_s」を参照してください。More secure versions of these functions are available; see ctime_s, _ctime32_s, _ctime64_s, _wctime_s, _wctime32_s, _wctime64_s.

構文Syntax

char *ctime( const time_t *sourceTime );
char *_ctime32( const __time32_t *sourceTime );
char *_ctime64( const __time64_t *sourceTime );
wchar_t *_wctime( const time_t *sourceTime );
wchar_t *_wctime32( const __time32_t *sourceTime );
wchar_t *_wctime64( const __time64_t *sourceTime );

パラメーターParameters

sourceTimesourceTime
変換する保存された時刻へのポインター。Pointer to stored time to convert.

戻り値Return Value

文字列結果へのポインター。A pointer to the character string result. 次の場合、 NULLが返されます。NULL will be returned if:

  • Sourcetimeは、1970年1月1日午前0時 (UTC) の日付を表します。sourceTime represents a date before midnight, January 1, 1970, UTC.

  • _Ctime32または _wctime32を使用する場合、 Sourcetimeは2038年1月18日23:59:59 の日付を表します。If you use _ctime32 or _wctime32 and sourceTime represents a date after 23:59:59 January 18, 2038, UTC.

  • _Ctime64または _wctime64を使用する場合、 Sourcetimeは23:59:59 年12月 3000 31 日の日付 (UTC) を表します。If you use _ctime64 or _wctime64 and sourceTime represents a date after 23:59:59, December 31, 3000, UTC.

ctimeは、 _ctime64に評価されるインライン関数で、 time_t__time64_tに相当します。ctime is an inline function which evaluates to _ctime64 and time_t is equivalent to __time64_t. 以前の32ビットのtime_tとしてtime_tを解釈するようにコンパイラに強制する必要がある場合は、 _USE_32BIT_TIME_Tを定義できます。If you need to force the compiler to interpret time_t as the old 32-bit time_t, you can define _USE_32BIT_TIME_T. これを行うと、 ctime_ctime32に評価されます。Doing this will cause ctime to evaluate to _ctime32. ただし、この方法は推奨されません。2038 年 1 月 18 日以降にアプリケーションがエラーになる可能性があり、また、64 ビット プラットフォームでは使用できないためです。This is not recommended because your application may fail after January 18, 2038, and it is not allowed on 64-bit platforms.

RemarksRemarks

Ctime関数は、 time_t値として格納されている時刻値を文字列に変換します。The ctime function converts a time value stored as a time_t value into a character string. Sourcetime値は通常、時刻の呼び出しから取得されます。この場合、午前0時 (00:00:00)、1970 1 月1日午前0時 (UTC) の時間が経過した秒数が返されます。The sourceTime value is usually obtained from a call to time, which returns the number of seconds elapsed since midnight (00:00:00), January 1, 1970, coordinated universal time (UTC). 戻り値には厳密に 26 文字が含まれ、次の形式になります。The return value string contains exactly 26 characters and has the form:

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

24 時間制が使用されます。A 24-hour clock is used. すべてのフィールドには一定の幅があります。All fields have a constant width. 文字列の最後の 2 つの位置には、改行文字 ('\n') と null 文字 ('\0') が入ります。The newline character ('\n') and the null character ('\0') occupy the last two positions of the string.

変換された文字列も、ローカル タイム ゾーンの設定に従って調整されます。The converted character string is also adjusted according to the local time zone settings. タイムゾーン環境とグローバル変数の定義の詳細については、 time_ftime、およびlocaltime関数に関する情報を参照してください。See the time, _ftime, and localtime functions for information on configuring the local time and the _tzset function for details about defining the time zone environment and global variables.

Ctimeを呼び出すと、 gmtime関数とlocaltime関数によって使用される、静的に割り当てられた単一のバッファーが変更されます。A call to ctime modifies the single statically allocated buffer used by the gmtime and localtime functions. これらのルーチンを呼び出すたびに、前の呼び出しの結果は破棄されます。Each call to one of these routines destroys the result of the previous call. ctimeは、 asctime関数を使用して静的バッファーを共有します。ctime shares a static buffer with the asctime function. そのため、 ctimeを呼び出すと、 asctimelocaltime、またはgmtimeへの以前の呼び出しの結果が破棄されます。Thus, a call to ctime destroys the results of any previous call to asctime, localtime, or gmtime.

_wctime_wctime64は、 ctime_ctime64のワイド文字バージョンです。ワイド文字列へのポインターを返します。_wctime and _wctime64 are the wide-character version of ctime and _ctime64; returning a pointer to wide-character string. それ以外の場合、 _ctime64_wctime、および _wctime64ctimeと同じように動作します。Otherwise, _ctime64, _wctime, and _wctime64 behave identically to ctime.

これらの関数では、パラメーターの検証が行われます。These functions validate their parameters. Sourcetimeが null ポインターの場合、またはsourcetime値が負の場合、「パラメーターの検証」で説明されているように、これらの関数は無効なパラメーターハンドラーを呼び出します。If sourceTime is a null pointer, or if the sourceTime value is negative, these functions invoke the invalid parameter handler, as described in Parameter Validation. 実行の継続が許可された場合、関数はNULLを返し、 errnoEINVALに設定します。If execution is allowed to continue, the functions return NULL and set errno to EINVAL.

汎用テキスト ルーチンのマップGeneric-Text Routine Mappings

TCHAR.H のルーチンTCHAR.H routine _UNICODE および _MBCS が未定義の場合_UNICODE & _MBCS not defined _MBCS が定義されている場合_MBCS defined _UNICODE が定義されている場合_UNICODE defined
_tctime_tctime ctimectime ctimectime _wctime_wctime
_tctime32_tctime32 _ctime32_ctime32 _ctime32_ctime32 _wctime32_wctime32
_tctime64_tctime64 _ctime64_ctime64 _ctime64_ctime64 _wctime64_wctime64

必要条件Requirements

ルーチンによって返される値Routine 必須ヘッダーRequired header
ctimectime <time.h><time.h>
_ctime32_ctime32 <time.h><time.h>
_ctime64_ctime64 <time.h><time.h>
_wctime_wctime <time.h> または <wchar.h><time.h> or <wchar.h>
_wctime32_wctime32 <time.h> または <wchar.h><time.h> or <wchar.h>
_wctime64_wctime64 <time.h> または <wchar.h><time.h> or <wchar.h>

互換性の詳細については、「 互換性」を参照してください。For additional compatibility information, see Compatibility.

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( &ltime );
   printf( "The time is %s\n", _ctime64( &ltime ) ); // C4996
   // Note: _ctime64 is deprecated; consider using _ctime64_s
}
The time is Wed Feb 13 16:04:43 2002

関連項目See also

時間管理Time Management
asctime、_wasctimeasctime, _wasctime
ctime_s、_ctime32_s、_ctime64_s、_wctime_s、_wctime32_s、_wctime64_sctime_s, _ctime32_s, _ctime64_s, _wctime_s, _wctime32_s, _wctime64_s
_ftime、_ftime32、_ftime64_ftime, _ftime32, _ftime64
gmtime、_gmtime32、_gmtime64gmtime, _gmtime32, _gmtime64
localtime、_localtime32、_localtime64localtime, _localtime32, _localtime64
time、_time32、_time64time, _time32, _time64