_strdate
, _wstrdate
將目前的系統日期複製到緩衝區。 這些函式已有更安全的版本可用,請參閱 _strdate_s
、_wstrdate_s
。
char *_strdate(
char *datestr
);
wchar_t *_wstrdate(
wchar_t *datestr
);
template <size_t size>
char *_strdate(
char (&datestr)[size]
); // C++ only
template <size_t size>
wchar_t *_wstrdate(
wchar_t (&datestr)[size]
); // C++ only
datestr
包含格式化日期字串之緩衝區的指標。
所有這些函式都會傳回所產生之字元字串 datestr
的指標。
這些函式已有更安全的版本可用,請參閱 _strdate_s
、_wstrdate_s
。 建議盡可能使用更安全的函式。
函 _strdate
式會將目前的系統日期複製到 所指向的 datestr
緩衝區,格式化 的mm/dd/yy,其中 mm 是代表月份的兩位數, dd 是代表日期的兩位數, 而 yy 是年份的最後兩位數。 例如,字串 12/05/99
代表 1999 年 12 月 5 日。 緩衝區長度至少必須是 9 個位元組。
如果 datestr
為NULL
指標,則會叫用無效的參數處理程式,如參數驗證中所述。 如果允許繼續執行,這些函式會傳回 -1,並將 errno
設為 EINVAL
。
_wstrdate
是 _strdate
的寬字元版本,_wstrdate
的引數與傳回值是寬字元字串。 除此之外,這些函式的行為相同。
在 C++ 中,這些函式具有樣板多載,可以叫用這些函式的更新且安全的對應版本。 如需詳細資訊,請參閱安全範本多載。
根據預設,此函式的全域狀態會限定於應用程式。 若要變更此行為,請參閱 CRT 中的全域狀態。
TCHAR.H 常式 | _UNICODE 和 _MBCS 未定義 |
_MBCS 已定義 |
_UNICODE 已定義 |
---|---|---|---|
_tstrdate |
_strdate |
_strdate |
_wstrdate |
常式 | 必要的標頭 |
---|---|
_strdate |
<time.h> |
_wstrdate |
<time.h> 或 <wchar.h> |
如需相容性詳細資訊,請參閱相容性。
// strdate.c
// compile with: /W3
#include <time.h>
#include <stdio.h>
int main()
{
char tmpbuf[9];
// Set time zone from TZ environment variable. If TZ is not set,
// the operating system is queried to obtain the default value
// for the variable.
//
_tzset();
printf( "OS date: %s\n", _strdate(tmpbuf) ); // C4996
// Note: _strdate is deprecated; consider using _strdate_s instead
}
OS date: 04/25/03
時間管理
asctime
, _wasctime
ctime
、、_ctime32
_ctime64
、_wctime
、、_wctime32
、_wctime64
gmtime
、 、 _gmtime32
_gmtime64
localtime
、 、 _localtime32
_localtime64
mktime
、 、 _mktime32
_mktime64
time
、 、 _time32
_time64
_tzset