_strdate_s, _wstrdate_s
Kopieren Sie das aktuelle Systemdatum in einem Puffer. Diese Versionen sind von _strdate, _wstrdate mit werden, wie in Sicherheitsfunktionen in der CRT beschrieben.
errno_t _strdate_s(
char *buffer,
size_t numberOfElements
);
errno_t _wstrdate_s(
wchar_t *buffer,
size_t numberOfElements
);
template <size_t size>
errno_t _strdate_s(
char (&buffer)[size]
); // C++ only
template <size_t size>
errno_t _wstrdate_s(
wchar_t (&buffer)[size]
); // C++ only
Parameter
[out] buffer
Ein Zeiger auf einen Puffer, der der formatierte Datumszeichenfolge gefüllt wird.[in] numberOfElements
Größe des Puffers.
Rückgabewert
Null wenn erfolgreich. Der Rückgabewert ist ein Fehlercode, wenn ein Fehler auftritt. Fehlercodes werden in ERRNO.H definiert; finden Sie folgenden Tabelle sind die genauen Fehler, die von dieser Funktion generiert werden. Weitere Informationen zu Fehlercodes, finden Sie unter errno.
Fehlerbedingungen
buffer |
numberOfElements |
Return |
Inhalt von buffer |
---|---|---|---|
NULL |
(alle) |
EINVAL |
Nicht geändert |
Nicht NULL (Zeiger auf gültigen Puffer) |
0 |
EINVAL |
Nicht geändert |
Nicht NULL (Zeiger auf gültigen Puffer) |
0 < numberOfElements < 9 |
EINVAL |
Leere Zeichenfolge |
Nicht NULL (Zeiger auf gültigen Puffer) |
numberOfElements >= 9 |
0 |
Aktuelles Datum formatiert, wie in den Hinweisen angegeben |
Sicherheitsprobleme
Die Übergabe in einen nicht ungültigen Wert NULL für den Puffer ergibt eine Zugriffsverletzung, wenn der numberOfElements-Parameter größer als 9. ist.
Das Übergeben von Werten für Größe, die größer ist, als das Originalgröße buffer ergibt Pufferüberlauf.
Hinweise
Diese Funktionen stellen sicherere Versionen von _strdate und _wstrdate. Die Funktion _strdate_s kopiert das aktuelle Systemdatum dem Puffer, auf den durch buffer, formatiertes mm/dd/yy gezeigt wird, wobei mm zwei Ziffern ist, die den Monat darstellen, ist dd zwei Ziffern, die den Tag darstellen, und yy ist die letzten beiden Stellen des Jahrs. Beispielsweise stellt die Zeichenfolge 12/05/99 am 5. Dezember 1999 dar. Der Puffer muss 9 Zeichen lang sein.
_wstrdate_s ist eine Breitzeichenversion von _strdate_s. Das Argument und der Rückgabewert von _wstrdate_s sind Zeichenfolgen mit Breitzeichen. Anderenfalls verhalten sich diese Funktionen identisch.
Wenn buffer ein NULL Zeiger ist oder wenn numberOfElements kleiner als 9 Zeichen ist, der ungültige Parameterhandler aufgerufen, wie in Parametervalidierung beschrieben. Wenn die Ausführung zulässig ist, um fortzufahren, geben diese Funktionen festgelegtem -1 und errno zu EINVAL, wenn der Puffer NULL ist, oder wenn numberOfElements kleiner oder gleich 0 ist, oder errno im Satz zu ERANGE zurück, wenn numberOfElements kleiner als 9 ist.
In C++ wird die Verwendung dieser Funktionen durch Vorlagenüberladungen vereinfacht; die Überladungen können automatisch Rückschlüsse auf die Pufferlänge ziehen (wodurch kein Größenargument mehr angegeben werden muss), und sie können automatisch die älteren, nicht sicheren Funktionen durch ihre neueren, sicheren Entsprechungen ersetzen. Weitere Informationen finden Sie unter Sichere Vorlagenüberladungen.
Zuordnung generischer Textroutinen:
TCHAR.H-Routine |
_UNICODE & _MBCS nicht definiert |
_MBCS definiert |
_UNICODE definiert |
---|---|---|---|
_tstrdate_s |
_strdate_s |
_strdate_s |
_wstrdate_s |
Anforderungen
Routine |
Erforderlicher Header |
---|---|
_strdate |
<time.h> |
_wstrdate |
<time.h oder> wchar.h <> |
_strdate_s |
<time.h> |
Beispiel
Im Beispiel für time.
.NET Framework-Entsprechung
Siehe auch
Referenz
ctime_s, _ctime32_s, _ctime64_s, _wctime_s, _wctime32_s, _wctime64_s
gmtime_s, _gmtime32_s, _gmtime64_s