_strdate_s, _wstrdate_s
Copiez la date système actuelle vers une mémoire tampon. Il s'agit de versions de 5x4fwzb4(v=vs.120).mdFonctionnalités de sécurité dans le CRT.
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
Paramètres
[out] buffer
Un pointeur vers une mémoire tampon qui sera rempli avec la chaine de dates formatée.[in] numberOfElements
Taille de la mémoire tampon.
Valeur de retour
Zéro en cas de réussite. La valeur de retour est un code d'erreur en cas de échec. Les codes d'erreur sont définis dans ERRNO.H ; consultez le tableau ci-dessous pour les erreurs exactes générées par cette fonction. Pour plus d'informations sur les codes d'erreur, consultez errno.
Conditions d'erreur
buffer |
numberOfElements |
Return |
Contenu de buffer. |
---|---|---|---|
NULL |
(Indifférent) |
EINVAL |
Non modifié |
Non NULL (pointeur vers la mémoire tampon valide) |
0 |
EINVAL |
Non modifié |
Non NULL (pointeur vers la mémoire tampon valide) |
0 < numberOfElements < 9 |
EINVAL |
Chaîne vide |
Non NULL (pointeur vers la mémoire tampon valide) |
numberOfElements >= 9 |
0 |
Date du jour au format spécifié dans les notes |
Problèmes de sécurité
Transmettre des valeurs non valides nonNULL du tampon génère une violation d'accès si le paramètrenumberOfElements est supérieur à 9.
Passer des valeurs pour une taille supérieure à la taille réelle debuffer entraîne un dépassement de mémoire tampon.
Notes
Ces fonctions fournissent des versions plus sécurisées de_strdate et de_wstrdate. La fonction _strdate_s copie la date système actuelle vers la mémoire tampon désignée par lebuffer, mmmis en forme/dd/yy, où les deux chiffres mm représentent le mois, les chiffres dd représentent le jour, et les deux chiffresyysont les deux derniers chiffres de l'année. Par exemple, la chaîne 12/05/99 représente le le 5 décembre 1999. La mémoire tampon doit contenir au moins 9 caractères.
_wstrdate_s est une version caractères larges de _strdate_s; l'argument et la valeur de retour de _wstrdate_s sont des chaînes de caractères larges. Ces fonctions se comportent sinon de façon identique.
Si buffer est un pointeur NULL, ou si numberOfElements est inférieur à 9 caractères, le gestionnaire de paramètre non valide est appelé, comme décrit dans Validation de paramètre. Si l'execution peut se poursuivre, ces fonctions retournent -1 et définissenterrno à EINVAL si la mémoire tampon est NULL ou si numberOfElements est inférieure ou égal à 0, ou définissent errno à ERANGE si numberOfElements est inférieur à 9.
En C++, l'utilisation de ces fonctions est simplifiée par les surcharges de modèle ; les surcharges peuvent déduire la longueur de la mémoire tampon automatiquement (ce qui évite d'avoir à spécifier un argument taille) et peuvent remplacer automatiquement les fonctions plus anciennes et non sécurisées par leurs équivalentes plus récentes et sécurisées. Pour plus d'informations, consultez Sécuriser les surcharges de modèle.
Mappage de routines de texte générique
Routine TCHAR.H |
_UNICODE & _MBCS non définis |
_MBCS défini |
_UNICODE défini |
---|---|---|---|
_tstrdate_s |
_strdate_s |
_strdate_s |
_wstrdate_s |
Configuration requise
Routine |
En-tête requis |
---|---|
_strdate |
<time.h> |
_wstrdate |
<time.h> or <wchar.h> |
_strdate_s |
<time.h> |
Exemple
Consultez l'exemple de time.
Équivalent .NET Framework
Voir aussi
Référence
ctime_s, _ctime32_s, _ctime64_s, _wctime_s, _wctime32_s, _wctime64_s
gmtime_s, _gmtime32_s, _gmtime64_s