ctime ()- 將時間轉換為字串

格式

#include <time.h>
char *ctime(const time_t *time);

語言層次

ANSI

安全執行緒

請改用 ctime_r()

區分語言環境

現行語言環境的 LC_TOD 種類可能會影響此函數的行為。 如需相關資訊,請參閱 瞭解 CCSID 及語言環境

說明

ctime() 函數會以字串形式將 time 所指向的時間值轉換為當地時間。 時間值通常是透過呼叫 time() 函數來取得。

ctime() 所產生的字串結果正好包含 26 個字元,其格式如下:
   "%.3s %.3s%3d %.2d:%.2d:%.2d %d\n"
例如:
   Mon Jul 16 02:03:55 1987\n\0

ctime() 函數使用 24 小時制格式。 日期縮寫為: SunMonTueWedThuFriSat。 月份縮寫為: JanFebMarAprMayJunJulAugSepOctNovDec。 所有欄位都有固定寬度。 只有一個數字的日期前面會有零。 換行字元 (\n) 和空值字元 (\0) 佔據字串的最後兩個位置。

回覆值

ctime() 函數會傳回字串結果的指標。 如果函數不成功,則會傳回 NULL。 對 ctime() 函數的呼叫相當於:
   asctime(localtime(&anytime))
附註: asctime()ctime() 函數以及其他時間函數可以使用一般靜態配置的緩衝區來保留傳回字串。 對其中一個函數的每一個呼叫可能會毀損前一個呼叫的結果。 asctime_r()ctime_r()gmtime_r()localtime_r() 函數不使用一般靜態配置的緩衝區來保留傳回字串。 如果需要重新進入,則可以使用這些函數來取代 asctime()ctime()gmtime()localtime()

範例

此範例會使用 time()來輪詢系統時鐘。 然後,它會列印一則訊息,提供現行日期和時間。
#include <time.h>
#include <stdio.h>
 
int main(void)
{
   time_t ltime;

   time(&ltime); 

   printf("the time is %s", ctime(&ltime));
}

相關資訊