strspn
, wcsspn
, _mbsspn
, _mbsspn_l
Retourne l’index du premier caractère d’une chaîne qui n’appartient pas à un jeu de caractères spécifié.
Important
_mbsspn
et _mbsspn_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 dans les applications de la plateforme Windows universelle.
Syntaxe
size_t strspn(
const char *str,
const char *strCharSet
);
size_t wcsspn(
const wchar_t *str,
const wchar_t *strCharSet
);
size_t _mbsspn(
const unsigned char *str,
const unsigned char *strCharSet
);
size_t _mbsspn_l(
const unsigned char *str,
const unsigned char *strCharSet,
_locale_t locale
);
Paramètres
str
Chaîne terminée par Null à trouver.
strCharSet
Jeu de caractères se terminant par null.
locale
Paramètres régionaux à utiliser.
Valeur retournée
Retourne une valeur entière spécifiant la longueur de la sous-chaîne dans str
laquelle se compose entièrement de caractères strCharSet
. Si str
commence par un caractère non compris strCharSet
, la fonction retourne 0.
Notes
La strspn
fonction retourne l’index du premier caractère qui str
n’appartient pas au jeu de caractères dans strCharSet
. La recherche n’inclut pas de caractères null de fin.
wcsspn
et _mbsspn
sont des versions à caractères larges et à caractères multioctets de strspn
. Les arguments de wcsspn
ces chaînes sont des chaînes à caractères larges. Les arguments de _mbsspn
ce sont des chaînes de caractères multioctets. _mbsspn
valide ses paramètres. Si str
ou strCharSet
est NULL
, le gestionnaire de paramètres non valide est appelé, comme décrit dans la validation des paramètres. Si l’exécution est autorisée à se poursuivre, _mbspn
affecte à errno
la valeur EINVAL
et retourne 0. strspn
et wcsspn
ne valident pas leurs paramètres. Ces trois fonctions se comportent sinon de façon identique.
La valeur de sortie est affectée par le paramètre de catégorie LC_CTYPE
des paramètres régionaux. Pour plus d’informations, consultez setlocale
. 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 Locale.
Par défaut, l’état global de cette fonction est limité à l’application. Pour modifier ce comportement, consultez État global dans le CRT.
Mappages de routine de texte générique
Routine TCHAR.H | _UNICODE et _MBCS non défini |
_MBCS Défini |
_UNICODE Défini |
---|---|---|---|
_tcsspn |
strspn |
_mbsspn |
wcsspn |
n/a | n/a | _mbsspn_l |
n/a |
Spécifications
Routine | En-tête requis |
---|---|
strspn |
<string.h> |
wcsspn |
<string.h> ou <wchar.h> |
_mbsspn , _mbsspn_l |
<mbstring.h> |
Pour plus d’informations sur la compatibilité, consultez Compatibility.
Exemple
// crt_strspn.c
// This program uses strspn to determine
// the length of the segment in the string "cabbage"
// consisting of a's, b's, and c's. In other words,
// it finds the first non-abc letter.
//
#include <string.h>
#include <stdio.h>
int main( void )
{
char string[] = "cabbage";
int result;
result = strspn( string, "abc" );
printf( "The portion of '%s' containing only a, b, or c "
"is %d bytes long\n", string, result );
}
The portion of 'cabbage' containing only a, b, or c is 5 bytes long
Voir aussi
Manipulation de chaîne
Paramètres régionaux
Interprétation des séquences de caractères multioctets
_strspnp
, _wcsspnp
, _mbsspnp
, _mbsspnp_l
strcspn
, wcscspn
, _mbscspn
, _mbscspn_l
strncat
, _strncat_l
, wcsncat
, _wcsncat_l
, _mbsncat
, _mbsncat_l
strncmp
, wcsncmp
, _mbsncmp
, _mbsncmp_l
strncpy
, _strncpy_l
, wcsncpy
, _wcsncpy_l
, _mbsncpy
, _mbsncpy_l
_strnicmp
, _wcsnicmp
, _mbsnicmp
, _strnicmp_l
, _wcsnicmp_l
, _mbsnicmp_l
strrchr
, wcsrchr
, _mbsrchr
, _mbsrchr_l
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour