_strnset, _strnset_l, _wcsnset, _wcsnset_l, _mbsnset, _mbsnset_l
Initialisez les caractères d'une chaîne à un caractère donné.Les versions sécurisées de ces fonctions existent ; consultez _strnset_s, _strnset_s_l, _wcsnset_s, _wcsnset_s_l, _mbsnset_s, _mbsnset_s_l.
Important
_mbsnset et _mbsnset_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.
char *_strnset(
char *str,
int c,
size_t count
);
char *_strnset_l(
char *str,
int c,
size_t count,
locale_t locale
);
wchar_t *_wcsnset(
wchar_t *str,
wchar_t c,
size_t count
);
wchar_t *_wcsnset_l(
wchar_t *str,
wchar_t c,
size_t count,
_locale_t locale
);
unsigned char *_mbsnset(
unsigned char *str,
unsigned int c,
size_t count
);
unsigned char *_mbsnset_l(
unsigned char *str,
unsigned int c,
size_t count,
_locale_t locale
);
Paramètres
str
Chaîne à modifier.c
Configuration de caractère.count
Nombre de caractères à définir.locale
Paramètres régionaux à utiliser.
Valeur de retour
Retourne un pointeur vers une chaîne modifiée.
Notes
La fonction d' _strnsetplace, au plus, les premiers caractères d' count d' str à c (converti en char).Si count est supérieur à la longueur d' str, la longueur d' str est utilisée au lieu d' count.
_wcsnset et _mbsnsetsont à caractères larges et des versions à caractères multioctets d' _strnset.Les arguments de chaîne et la valeur de retour d' _wcsnsetsont des chaînes à caractères larges ; ces d' _mbsnset sont des chaînes de caractères multioctets.Ces trois fonctions se comportent de sinon.
_mbsnsetvalide ses paramètres ; si str est un pointeur 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, retourne d' _mbsnsetANNULENT et affectez errnoà EINVAL._strnset et _wcsnset ne valident pas leurs paramètres.
La valeur de sortie est affectée par la configuration de la définition de catégorie d' LC_CTYPEdes 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.
Mappages de routines de texte générique
Routine de TCHAR.H |
_UNICODE et non définis _MBCS |
_MBCS défini |
_UNICODE défini |
---|---|---|---|
_tcsnset |
_strnset |
_mbsnbset |
_wcsnset |
_tcsnset_l |
_strnset_l |
_mbsnbset_l |
_wcsnset_l |
Configuration requise
Routine |
En-tête requis |
---|---|
_strnset |
<string.h> |
_strnset_l |
<tchar.h> |
_wcsnset |
<string.h> ou <wchar.h> |
_wcsnset_l |
<tchar.h> |
_mbsnset, _mbsnset_l |
<mbstring.h> |
Pour des informations de compatibilité supplémentaires, consultez l' Compatibilité dans l'introduction.
Exemple
// crt_strnset.c
// compile with: /W3
#include <string.h>
#include <stdio.h>
int main( void )
{
char string[15] = "This is a test";
/* Set not more than 4 characters of string to be *'s */
printf( "Before: %s\n", string );
_strnset( string, '*', 4 ); // C4996
// Note: _strnset is deprecated; consider using _strnset_s
printf( "After: %s\n", string );
}