Partager via


_strspnp, _wcsspnp, _mbsspnp, _mbsspnp_l

Retourne un pointeur vers le premier caractère d’une chaîne donnée qui n’est pas dans une autre chaîne donnée.

Important

_mbsspnp et _mbsspnp_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

char *_strspnp(
   const char *str,
   const char *charset
);
wchar_t *_wcsspnp(
   const unsigned wchar_t *str,
   const unsigned wchar_t *charset
);
unsigned char *_mbsspnp(
   const unsigned char *str,
   const unsigned char *charset
);
unsigned char *_mbsspnp_l(
   const unsigned char *str,
   const unsigned char *charset,
   _locale_t locale
);

Paramètres

str
Chaîne terminée par Null à trouver.

charset
Jeu de caractères se terminant par null.

locale
Paramètres régionaux à utiliser.

Valeur retournée

_strspnp, _wcsspnpet _mbsspnp retourne un pointeur vers le premier caractère dans str lequel il n’appartient pas au jeu de caractères dans charset. Chacune de ces fonctions retourne NULL s’il str se compose entièrement de caractères de charset. Pour chacune de ces routines, aucune valeur de retour n’est réservée pour indiquer une erreur.

Notes

La _mbsspnp fonction retourne un pointeur vers le caractère multioctet qui est le premier caractère de str ce qui n’appartient pas au jeu de caractères dans charset. _mbsspnp reconnaît les séquences de caractères multioctets en fonction de la page de codes multioctets en cours d’utilisation. La recherche n’inclut pas de caractères null de fin.

Si l’un str ou charset l’autre est un pointeur Null, cette fonction appelle le gestionnaire de paramètres non valide, comme décrit dans la validation des paramètres. Si l'exécution est autorisée à continuer, cette fonction retourne NULL et définit à errno à EINVAL.

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
_tcsspnp _strspnp _mbsspnp _wcsspnp

_strspnp et _wcsspnp sont des versions à caractères codés sur un octet et à caractères larges de _mbsspnp. _strspnp et _wcsspnp se comportent de la même manière que _mbsspnp dans le cas contraire ; ils sont fournis uniquement pour ce mappage et ne doivent pas être utilisés pour une autre raison. Pour plus d’informations, consultez Utilisation de mappages de texte générique et de mappages de texte générique.

La fonction _mbsspnp_l est identique, sauf qu’elle utilise à la place les paramètres régionaux transmis. Pour plus d’informations, consultez Locale.

Spécifications

Routine En-tête requis
_mbsspnp <mbstring.h>
_strspnp <tchar.h>
_wcsspnp <tchar.h>

Pour plus d’informations sur la compatibilité, consultez Compatibility.

Exemple

// crt_mbsspnp.c
#include <mbstring.h>
#include <stdio.h>

int main( void ) {
   const unsigned char string1[] = "cabbage";
   const unsigned char string2[] = "c";
   unsigned char *ptr = 0;
   ptr = _mbsspnp( string1, string2 );
   printf( "%s\n", ptr);
}

Sortie

abbage

Voir aussi

Manipulation de chaîne
Paramètres régionaux
Interprétation des séquences de caractères multioctets
strspn, wcsspn, _mbsspn, _mbsspn_l
strncat_s, _strncat_s_l, wcsncat_s, _wcsncat_s_l, _mbsncat_s, _mbsncat_s_l
strncmp, wcsncmp, _mbsncmp, _mbsncmp_l
strncpy_s, _strncpy_s_l, wcsncpy_s, _wcsncpy_s_l, _mbsncpy_s, _mbsncpy_s_l
_strnicmp, _wcsnicmp, _mbsnicmp, _strnicmp_l, _wcsnicmp_l, _mbsnicmp_l
strrchr, wcsrchr, _mbsrchr, _mbsrchr_l