時間管理

您可以使用這些函式取得目前的時間,以及在必要時轉換、調整及儲存該時間。 目前的時間為系統時間。

_ftime 與 localtime 常式會使用 TZ 環境變數。 如果未 TZ 設定,運行時間連結庫會嘗試使用操作系統所指定的時區資訊。 若此資訊無法使用,這些函式會使用預設值 PST8PDT。 如需 的詳細資訊TZ,請參閱 _tzset;另請參閱_daylight 、 timezone和 _tzname。

時間例程

函式 使用
asctime、 、 _wasctime、 asctime_s_wasctime_s 將時間從類型 struct tm 轉換為字元字串 這些具有 _s 尾碼的函式版本比較安全。
clock 傳回處理序的耗用時鐘時間。
ctime、_ctime32、_ctime64、_wctime、_wctime32、_wctime64、_ctime_s_ctime32_s_ctime64_s、_wctime_s、、、 _wctime32_s_wctime64_s 將時間從類型 time_t、 __time32_t 或 __time64_t 轉換為字元字串。 這些具有 _s 尾碼的函式版本比較安全。
difftime、 、 _difftime32_difftime64 計算兩個時間之間的差異。
_ftime、_ftime32、_ftime64、_ftime_s、、_ftime32_s_ftime64_s 將目前的系統時間儲存在類型 struct _timeb 或類型 struct __timeb64 這些具有 _s 尾碼的變數版本比較安全。
_futime、 、 _futime32_futime64 對開啟的檔案上設定修改時間
gmtime _gmtime32、_gmtime64 將時間從類型 time_t 轉換為 struct tm 或從 類型 __time64_t 轉換為 struct tm。 這些具有 _s 尾碼的函式版本比較安全。
localtime _localtime32、_localtime64 將時間從類型 time_t 轉換為 struct tm,或從類型 __time64_t 轉換為經過本機校正的 struct tm。 這些具有 _s 尾碼的函式版本比較安全。
_mkgmtime、 、 _mkgmtime32_mkgmtime64 將時間轉換為格林威治標準時間的月曆值。
mktime、 、 _mktime32_mktime64 將時間轉換為月曆值。
_strdate、 、 _wstrdate、 _strdate_s_wstrdate_s 以字串形式傳回目前的系統日期。 這些具有 _s 尾碼的函式版本比較安全。
strftime、 、 wcsftime、 _strftime_l_wcsftime_l 將日期與時間字串格式化成國際通用的格式。
_strtime、 、 _wstrtime、 _strtime_s_wstrtime_s 以字串形式傳回目前的系統時間。 這些具有 _s 尾碼的函式版本比較安全。
time、 、 _time32_time64 取得目前的系統時間,類型為 time_t、 __time32_t 或 __time64_t。
_tzset 從環境時間變數 TZ 設定外部時間變數 。
_utime、、_utime32_utime64、_wutime、、_wutime32、_wutime64 使用目前的時間或結構中儲存的時間值,為指定的檔案設定修改時間。

注意

在所有的 Microsoft C/C++ 版本 (Microsoft C/C++ 7.0 版除外) 與所有的 Visual C++ 版本中,時間函式會傳回自 1970 年 1 月 1 日午夜起算所經過的秒數作為目前的時間。 在 Microsoft C/C++ 7.0 版中,time 會傳回自 1899 年 12 月 31 日午夜起算所經過的秒數作為目前的時間。

注意

在 Visual Studio 2005 之前的 Visual C++ 和 Microsoft C/C++ 版本中, time_t 是一個 long int (32 位),因此無法用於 2038 年 1 月 19 日 3:14:07 的日期。 現在 time_t 預設等同於 __time64_t,但定義 _USE_32BIT_TIME_T 會將 time_t 變更為 __time32_t 並強制許多時間函式呼叫接受 32 位元 time_t 的版本。 如需詳細資訊,請參閱 個別時間函式檔中的標準類型和 批注。

另請參閱

依類別排序的通用 C 執行階段常式