共用方式為


ctime、 _ctime32、 _ctime64、 _wctime、 _wctime32、 _wctime64

將時間值轉換為字串,以及調整區域的本地時間設定。 這些函式更安全版本都可使用; see 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 
);

參數

  • timer
    預存時間的指標。

傳回值

變數的指標,將字串的字元。 NULL若,即傳回:

  • time表示 1970 年 1 月 1 日午夜 UTC 之前的日期。

  • 如果您使用_ctime32或_wctime32和time代表 03: 14: 07 以後 2038 年 1 月 19 日之後的日期。

  • 如果您使用_ctime64或_wctime64和time表示 23: 59: 59,3000 年 12 月 31 UTC 之後的日期。

ctime是內嵌函式評估_ctime64 和time_t 相當於__time64_t。 如果您要強制編譯器解譯time_t 為舊的 32 位元time_t,您可以定義_USE_32BIT_TIME_T。 如此一來,這會導致ctime 估算_ctime32。 建議您不要因為您的應用程式可能會失敗之後 2038 年 1 月 18 日,而且不允許在 64 位元平台上。

備註

ctime函式將轉換的時間值儲存為 time_t 轉換為字元字串的值。 timer值通常取自呼叫時間,會傳回從午夜到現在所經過的秒數 (00: 00: 00)、 1970 年 1 月 1,國際標準時間 (UTC)。 傳回值的字串包含完全 26 個字元,其格式:

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

使用 24 小時制。 所有欄位都具有固定寬度。 新行字元 ('\n') 與 null 字元 ('\ 0') 會佔用最後兩個字串的位置。

根據當地時間的區域設定時也調整轉換後的字元字串。 請參閱time, _ftime,和本地時間如需設定當地時間的函式和 _tzset 如需詳細資訊,有關定義時區的環境和全域變數的函式。

呼叫ctime修改所使用的單一靜態配置的緩衝區gmtime和localtime函式。 每次呼叫其中一個這些常式會終結之前呼叫的結果。 ctime共用靜態緩衝區,與asctime函式。 因此,呼叫ctime會終結任何先前呼叫的結果asctime, localtime,或gmtime。

_wctime與_wctime64是寬字元版本ctime和_ctime64。 傳回為寬字元字串的指標。 Otherwise, _ctime64, _wctime, and _wctime64 behave identically to ctime.

這些函式會驗證它們的參數。 如果timer是空值的指標,或如果計時器數值為負,這些函式叫用無效的參數處理常式中,如所述參數驗證。 如果執行則允許繼續執行,則函數會傳回NULL ,並設定errno到EINVAL。

泛用文字常式對應

TCHAR。H 常式

_UNICODE & 未定義的 _MBCS

定義的 _MBCS

定義 _unicode 之後

_tctime

ctime

ctime

_wctime

_tctime32

_ctime32

_ctime32

_wctime32

_tctime64

_ctime64

_ctime64

_wctime64

需求

常式

所需的標頭

ctime

<time.h>

_ctime32

<time.h>

_ctime64

<time.h>

_wctime

<time.h> 或者 <wchar.h>

_wctime32

<time.h> 或者 <wchar.h>

_wctime64

<time.h> 或者 <wchar.h>

其他的相容性資訊,請參閱相容性在簡介中。

範例

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

.NET Framework 對等用法

請參閱

參考

時間管理

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