_strdate、_wstrdate_strdate, _wstrdate

現在のシステム日付をバッファーにコピーします。Copy current system date to a buffer. これらの関数のセキュリティを強化したバージョンを使用できます。「_strdate_s、_wstrdate_s」をご覧ください。More secure versions of these functions are available; see _strdate_s, _wstrdate_s.

構文Syntax

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

パラメーターParameters

datestrdatestr
書式付きデータの文字列を含むバッファーへのポインター。A pointer to a buffer containing the formatted date string.

戻り値Return Value

これらの各関数は、結果として得られた文字列datestrへのポインターを返します。Each of these functions returns a pointer to the resulting character string datestr.

RemarksRemarks

これらの関数のセキュリティを強化したバージョンを使用できます。「_strdate_s、_wstrdate_s」をご覧ください。More secure versions of these functions are available; see _strdate_s, _wstrdate_s. 可能な限りセキュリティが強化された関数を使用することをお勧めします。It is recommended that the more secure functions be used wherever possible.

_Strdate関数は、現在のシステム日付をdatestrでポイントされたバッファーにコピーします。書式はmm/dd/yyです。ここで、 mmは月を表す2桁、 ddは、1日を表す2桁の数字で、 yyは年の最後の2桁です。The _strdate function copies the current system date to the buffer pointed to by datestr, formatted mm/dd/yy, where mm is two digits representing the month, dd is two digits representing the day, and yy is the last two digits of the year. たとえば、文字列12/05/99は1999年12月5日を表します。For example, the string 12/05/99 represents December 5, 1999. バッファーは 9 バイト以上の長さである必要があります。The buffer must be at least 9 bytes long.

DatestrNULLポインターの場合は、「パラメーターの検証」で説明されているように、無効なパラメーターハンドラーが呼び出されます。If datestr is a NULL pointer, the invalid parameter handler is invoked, as described in Parameter Validation. 実行の継続が許可された場合、これらの関数は-1 を返し、 errnoEINVALに設定します。If execution is allowed to continue, these functions return -1 and set errno to EINVAL.

_wstrdateは、 _strdateのワイド文字バージョンです。 _wstrdateの引数と戻り値はワイド文字列です。_wstrdate is a wide-character version of _strdate; the argument and return value of _wstrdate are wide-character strings. それ以外では、これらの関数の動作は同じです。These functions behave identically otherwise.

C++ では、これらの関数にテンプレートのオーバーロードがあります。このオーバーロードは、これらの関数に対応するセキュリティで保護された新しい関数を呼び出します。In C++, these functions have template overloads that invoke the newer, secure counterparts of these functions. 詳細については、「 Secure Template Overloads」を参照してください。For more information, see Secure Template Overloads.

汎用テキスト ルーチンのマップGeneric-Text Routine Mappings

TCHAR.H のルーチンTCHAR.H routine _UNICODE および _MBCS が未定義の場合_UNICODE & _MBCS not defined _MBCS が定義されている場合_MBCS defined _UNICODE が定義されている場合_UNICODE defined
_tstrdate_tstrdate _strdate_strdate _strdate_strdate _wstrdate_wstrdate

必要条件Requirements

ルーチンによって返される値Routine 必須ヘッダーRequired header
_strdate_strdate <time.h><time.h>
_wstrdate_wstrdate <time.h> または <wchar.h><time.h> or <wchar.h>

互換性の詳細については、「 互換性」を参照してください。For additional compatibility information, see Compatibility.

Example

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

関連項目See also

時間管理Time Management
asctime、_wasctimeasctime, _wasctime
ctime、_ctime32、_ctime64、_wctime、_wctime32、_wctime64ctime, _ctime32, _ctime64, _wctime, _wctime32, _wctime64
gmtime、_gmtime32、_gmtime64gmtime, _gmtime32, _gmtime64
localtime、_localtime32、_localtime64localtime, _localtime32, _localtime64
mktime、_mktime32、_mktime64mktime, _mktime32, _mktime64
time、_time32、_time64time, _time32, _time64
_tzset_tzset