_strset, _strset_l, _wcsset, _wcsset_l, _mbsset, _mbsset_l
Définit les caractères d'une chaîne à un caractère. Des versions plus sécurisées de ces fonctions sont disponibles ; consultez _strset_s, _strset_s_l, _wcsset_s, _wcsset_s_l, _mbsset_s, _mbsset_s_l.
Important
_mbsset and _mbsset_l ne peuvent pas être utilisés dans les applications qui s'exécutent dans le Windows Runtime.Pour plus d'informations, consultez Fonctions CRT non prises en charge avec /ZW.
char *_strset(
char *str,
int c
);
char *_strset_l(
char *str,
int c,
locale_t locale
);
wchar_t *_wcsset(
wchar_t *str,
wchar_t c
);
wchar_t *_wcsset_l(
wchar_t *str,
wchar_t c,
locale_t locale
);
unsigned char *_mbsset(
unsigned char *str,
unsigned int c
);
unsigned char *_mbsset_l(
unsigned char *str,
unsigned int c,
_locale_t locale
);
Paramètres
str
Chaîne terminée par Null à définir.c
Paramètre de caractère.locale
Paramètres régionaux à utiliser.
Valeur de retour
Retourne un pointeur vers la chaîne modifiée.
Notes
La fonction _strset définit tous les caractères (sauf le caractère null de fin) de str à c, en char. _wcsset et _mbsset_l sont à caractère élargi et des versions à caractères multi-octets de _strset, et les types de données des arguments et les valeurs de retour varient en conséquence. Ces fonctions se comportent sinon de façon identique.
_mbsset valide ses paramètres. Si str est un pointeur null, le gestionnaire de paramètres non valides est appelé, comme décrit dans Validation de paramètre. Si l'exécution est autorisée à se poursuivre,_mbsset renvoie NULL et attribue à errno la valeur EINVAL. _strset et _wcsset ne valident pas leurs paramètres.
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, _wsetlocale pour plus d'informations. Les versions des fonctions sont identiques, sauf pour celles qui ne disposent pas du suffixe _l qui utilisent les version régionales, et celles qui n'ont pas le suffix _l utilisent le paramètre local passé à la place. Pour plus d'informations, consultez Paramètres régionaux.
Note de sécurité |
---|
Ces fonctions peuvent être vulnérables aux menaces de dépassement de mémoire tampon.Les dépassements de mémoire tampon peuvent être utilisés pour les attaques du système, car ils peuvent provoquer une élévation des privilèges injustifiée.Pour plus d'informations, consultez Solutions contre les dépassements de mémoire tampon. |
Mappages de routines de texte générique
Routine TCHAR.H |
_UNICODE & _MBCS non définis |
_MBCS défini |
_UNICODE défini |
---|---|---|---|
_tcsset |
_strset |
_mbsset |
_wcsset |
_tcsset_l |
_strset_l |
_mbsset_l |
_wcsset_l |
Configuration requise
Routine |
En-tête requis |
---|---|
_strset |
<string.h> |
_strset_l |
<tchar.h> |
_wcsset |
<string.h> ou <wchar.h> |
_wcsset_l |
<tchar.h> |
_mbsset, _mbsset_l |
<mbstring.h> |
Pour plus d'informations sur la compatibilité, consultez Compatibilité.
Exemple
// crt_strset.c
// compile with: /W3
#include <string.h>
#include <stdio.h>
int main( void )
{
char string[] = "Fill the string with something.";
printf( "Before: %s\n", string );
_strset( string, '*' ); // C4996
// Note: _strset is deprecated; consider using _strset_s instead
printf( "After: %s\n", string );
}
Équivalent .NET Framework
Non applicable. Pour appeler la fonction C standard, utilisez PInvoke. Pour plus d'informations, consultez Exemples d'appel de code non managé.
Voir aussi
Référence
Interprétation des séquences de caractères multioctets
_strnset, _strnset_l, _wcsnset, _wcsnset_l, _mbsnset, _mbsnset_l