Partager via


_strset_s, _strset_s_l, _wcsset_s, _wcsset_s_l, _mbsset_s, _mbsset_s_l

Définissez les caractères d'une chaîne à un seul caractère.Ce sont des versions de _strset, _strset_l, _wcsset, _wcsset_l, _mbsset, _mbsset_l avec des améliorations de sécurité comme décrit dans Fonctionnalités de sécurité du CRT.

Important

_mbsset_s et _mbsset_s_l ne peuvent pas être utilisés dans les applications qui s'exécutent dans les fenêtres d'exécution.Pour plus d'informations, consultez Fonctions CRT non prises en charge avec /ZW.

errno_t _strset_s(
   char *str,
   size_t numberOfElements,
   int c 
);
errno_t _strset_s_l(
   char *str,
   size_t numberOfElements,
   int c,
   locale_t locale
);
errno_t _wcsset_s(
   wchar_t *str,
   size_t numberOfElements,
   wchar_t c 
);
errno_t *_wcsset_s_l(
   wchar_t *str,
   size_t numberOfElements,
   wchar_t c,
   locale_t locale
);
errno_t _mbsset_s(
   unsigned char *str,
   size_t numberOfElements,
   unsigned int c 
);
errno_t _mbsset_s_l(
   unsigned char *str,
   size_t numberOfElements,
   unsigned int c,
   _locale_t locale
);

Paramètres

  • str
    Chaîne terminée par le caractère NULL à définir.

  • numberOfElements
    La taille de la mémoire tampon d' str .

  • c
    Configuration de caractère.

  • locale
    Paramètres régionaux à utiliser.

Valeur de retour

Zéro si l'opération a réussi, sinon code d'erreur.

Ces fonctions valident leurs arguments.Si str est un pointeur null, ou l'argument d' numberOfElements est inférieure ou égale à 0, ou le bloc passé n'est pas se terminant par null, le gestionnaire de paramètre non valide est appelé, comme décrit dans Validation des paramètres.Si est autorisé à l'exécution pour continuer, ces fonctions EINVAL de retour et affectez errnoà EINVAL.

Notes

La fonction d' _strset_s définit tous les caractères d' str à c (converti en char), à l'exception de le caractère NULL de fin._wcsset_s et _mbsset_s sont à caractères larges et des versions à caractères multioctets d' _strset_s.Les types de données des arguments et des valeurs de retour varient en conséquence.Ces fonctions se comportent de sinon.

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

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

Mappages de routines de texte générique

Routine de TCHAR.H

_UNICODE et non définis _MBCS

_MBCS défini

_UNICODE défini

_tcsset_s

_strset_s

_mbsset_s

_wcsset_s

_tcsset_s_l

_strset_s_l

_mbsset_s_l

_wcsset_s_l

Configuration requise

Routine

En-tête requis

_strset_s

<string.h>

_strset_s_l

<tchar.h>

_wcsset_s

<string.h> ou <wchar.h>

_wcsset_s_l

<tchar.h>

_mbsset_s, _mbsset_s_l

<mbstring.h>

Pour des informations de compatibilité supplémentaires, consultez l' Compatibilité dans l'introduction.

Exemple

// crt_strset_s.c
#include <string.h>
#include <stdio.h>
#include <stdlib.h>

int main( void )
{
   char string[] = "Fill the string with something.";
   printf( "Before: %s\n", string );
   _strset_s( string, _countof(string), '*' );
   printf( "After:  %s\n", string );
}
  
  

Équivalent .NET Framework

Non applicable. Pour appeler la fonction C standard, utilisez PInvoke. Pour plus d'informations, consultez l' Exemples d'appel de code non managé.

Voir aussi

Référence

Manipulation de chaînes (CRT)

Paramètres régionaux

Interprétation des séquences de caractères multioctets

_mbsnbset, _mbsnbset_l

memset, wmemset

strcat, wcscat, _mbscat

strcmp, wcscmp, _mbscmp

strcpy, wcscpy, _mbscpy

_strnset, _strnset_l, _wcsnset, _wcsnset_l, _mbsnset, _mbsnset_l