時間管理

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

_ftimelocaltime 常式會使用 TZ 環境變數。 如果未 TZ 設定,執行時間程式庫會嘗試使用作業系統所指定的時區資訊。 若此資訊無法使用,這些函式會使用預設值 PST8PDT。 如需 的詳細資訊 TZ ,請參閱 _tzset ;另請參閱 _daylighttimezone_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 、_ftime64_s _ftime32_s 將目前的系統時間儲存在類型 struct _timeb 或類型 struct __timeb64 這些具有 _s 尾碼的變數版本比較安全。
_futime, _futime32, _futime64 對開啟的檔案上設定修改時間
gmtime, _gmtime32, _gmtime64, gmtime_s, _gmtime32_s, _gmtime64_s 將時間從類型 time_t 轉換為 struct tm 或從 類型 __time64_t 轉換為 struct tm 。 這些具有 _s 尾碼的函式版本比較安全。
localtime, _localtime32, _localtime64, localtime_s, _localtime32_s, _localtime64_s 將時間從類型 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 執行階段常式