Nous recommandons d’utiliser Visual Studio 2017

_strnset, _strnset_l, _wcsnset, _wcsnset_l, _mbsnset, _mbsnset_l

 

Pour obtenir la dernière documentation sur Visual Studio 2017, consultez Documentation Visual Studio 2017.

Initialise les caractères d’une chaîne à un caractère donné. Des versions plus sécurisées de ces fonctions existent ; consultez la page _strnset_s, _strnset_s_l, _wcsnset_s, _wcsnset_s_l, _mbsnset_s, _mbsnset_s_l.

System_CAPS_ICON_important.jpg Important

_mbsnset et _mbsnset_l ne peuvent pas être utilisées dans les applications qui s'exécutent dans Windows Runtime. 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
Paramètre de caractère.

count
Nombre de caractères à définir.

locale
Paramètres régionaux à utiliser.

Retourne un pointeur vers la chaîne modifiée.

Le _strnset affecte la fonction, au maximum, la première count caractères de str à c (converti en char). Si la valeur count est supérieure à la longueur de str, la longueur de str est utilisée à la place de count.

_wcsnset et _mbsnset sont des versions à caractères larges et à caractères multioctets de _strnset. Les arguments de chaîne et la valeur de retour de _wcsnset sont des caractères larges chaînes ; ceux de _mbsnset sont des chaînes de caractères multioctets. Ces trois fonctions se comportent sinon de façon identique.

_mbsnsetvalide ses paramètres ; Si str est un pointeur null, le Gestionnaire de paramètre non valide est appelé, comme décrit dans Validation de paramètre . Si l’exécution est autorisée à se poursuivre, _mbsnset renvoie la valeur NULL et définit errno à EINVAL. _strnset et _wcsnset ne vérifient pas leurs paramètres.

La valeur de sortie est affectée par la définition de la LC_CTYPE catégorie de paramètres régionaux ; consultez setlocale pour plus d’informations. Les versions de ces fonctions sans le _l suffixe utilisent les paramètres régionaux actuels pour ce comportement dépendant des paramètres régionaux et les versions avec le_l suffixe sont identiques, sauf qu’ils utilisent les paramètres régionaux passés à la place. Pour plus d’informations, consultez Locale.

Mappages de routines de texte générique

Routine TCHAR.H_UNICODE et _MBCS non définis_MBCS défini_UNICODE défini
_tcsnset_strnset_mbsnbset_wcsnset
_tcsnset_l_strnset_l_mbsnbset_l_wcsnset_l
RoutineEn-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 plus d'informations sur la compatibilité, voir Compatibilité.

// 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 );  
}  

Before: This is a test  
After:  **** is a test  

System::String::replace

Manipulation de chaînes
Paramètres régionaux
Interprétation des séquences de caractères multioctets
strcat, wcscat, _mbscat
strcmp, wcscmp, _mbscmp
strcpy, wcscpy, _mbscpy
_strset, _strset_l, _wcsset, _wcsset_l, _mbsset, _mbsset_l

Afficher: