Exporter (0) Imprimer
Développer tout
and
div
eof
not
or
xor
Développer Réduire
Cet article a fait l'objet d'une traduction automatique. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte. Informations supplémentaires.
Traduction
Source

_mbsnbcpy_s, _mbsnbcpy_s_l

Copie n octets d'une chaîne vers une chaîne de destination. Ces versions _mbsnbcpy, _mbsnbcpy_l présentent des améliorations de sécurité, comme décrit dans Fonctionnalités de sécurité dans le CRT.

Remarque importante Important

Cette API ne peut pas être utilisée dans les applications qui s'exécutent dans le Windows Runtime. Pour plus d'informations, consultez Fonctions CRT non prises en charge avec /ZW.

errno_t _mbsnbcpy_s(
   unsigned char * strDest,
   size_t sizeInBytes,
   const unsigned char * strSource,
   size_t count 
);
errno_t _mbsnbcpy_s_l(
   unsigned char * strDest,
   size_t sizeInBytes,
   const unsigned char * strSource,
   size_t count,
   _locale_t locale
);
template <size_t size>
errno_t _mbsnbcpy_s(
   unsigned char (&strDest)[size],
   const unsigned char * strSource,
   size_t count 
); // C++ only
template <size_t size>
errno_t _mbsnbcpy_s_l(
   unsigned char (&strDest)[size],
   const unsigned char * strSource,
   size_t count,
   _locale_t locale
); // C++ only

strDest

Destination pour la chaîne de caractères à copier.

sizeInBytes

Taille de la mémoire tampon de destination.

strSource

Chaîne de caractères à copier.

count

Nombre d'octets à copier.

locale

Paramètres régionaux à utiliser.

Zéro si réussi ; EINVAL si un mauvais paramètre est passé.

La fonction _mbsnbcpy_s copie des octets count depuis strSource vers strDest. Si count dépasse la taille de strDest, l'une des chaînes d'entrée est un pointeur null, ou sizeInBytes ou count est 0, la fonction appelle le gestionnaire de paramètre non valide comme décrit dans Validation de paramètre. Si l'exécution est autorisée à se poursuivre, la fonction retourne EINVAL. Si les chaînes source et destination se superposent, le comportement de _mbsnbcpy_s est non défini.

La valeur de la sortie est affectée par la valeur du paramètre de la catégorie LC_CTYPE des paramètres régionaux ; consultez setlocale, pour plus d'informations. Les versions de ces fonctions sans le suffixe _l utilisent les paramètres régionaux pour ce comportement dépendant des paramètres régionaux ; les versions avec le suffixe _l sont identiques, sauf qu'elles utilisent à la place les paramètres régionaux transmis. Pour plus d'informations, consultez Paramètres régionaux.

Remarque Remarque

Contrairement à la version non sécurisée de cette fonction, _mbsnbcpy_s ne fait aucun remplissage null et termine toujours la chaîne par un null.

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.

Les versions debug de ces fonctions remplissent d'abord la mémoire tampon avec 0xFD. Pour désactiver ce comportement, utilisez _CrtSetDebugFillThreshold.

Mappages de routines de texte générique

Routine Tchar.h

_UNICODE et _MBCS non définis

_MBCS défini

_UNICODE défini

_tcsncpy_s

_strncpy_s

_mbsnbcpy_s

_wcsncpy_s

_tcsncpy_s_l

_strncpy_s_l

_mbsnbcpy_s_l

_wcsncpy_s_l

Routine

En-tête requis

_mbsnbcpy_s

<mbstring.h>

_mbsnbcpy_s_l

<mbstring.h>

Pour plus d'informations sur la compatibilité, consultez Compatibilité.

Non applicable. Pour appeler la fonction C standard, utilisez PInvoke. Pour plus d'informations, consultez Exemples d'appel de plateforme.

Ajouts de la communauté

AJOUTER
Microsoft réalise une enquête en ligne pour recueillir votre opinion sur le site Web de MSDN. Si vous choisissez d’y participer, cette enquête en ligne vous sera présentée lorsque vous quitterez le site Web de MSDN.

Si vous souhaitez y participer,
Afficher:
© 2014 Microsoft