Sdílet prostřednictvím


_strspnp, _wcsspnp, _mbsspnp, _mbsspnp_l

Vrací ukazatel na první znak zadaného řetězce, který není v druhém zadaném řetězci.

Důležitá poznámkaDůležité

_mbsspnp a _mbsspnp_l nelze použít v aplikacích, které jsou spouštěny v modulu Windows Runtime.Další informace naleznete v tématu CRT funkce nejsou podporovány s /ZW.

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

Parametry

  • str
    Hledaný řetězec zakončený hodnotou null.

  • charset
    Sada znaků zakončených znakem null.

  • locale
    Použité národní prostředí.

Vrácená hodnota

_strspnp, _wcsspnp a _mbsspnp vrací ukazatel na první znak v str, který nepatří do sady znaků charset*.* Každá z těchto funkcí vrací NULL, pokud se str skládá zcela ze znaků charset*.* Pro žádnou z těchto rutin není vyhrazena návratová hodnota udávající chybu.

Poznámky

Funkce _mbsspnp vrací ukazatel na vícebajtový znak, který je první znak v str, který nepatří do sady znaků v charset._mbsspnp rozpozná vícebajtové znakové sekvence podle vícebajtové znakové stránky, která se právě používá.Hledání nezahrnuje ukončovací znaky null.

Pokud str nebo charset je ukazatel s hodnotou null, tato funkce vyvolá neplatný parametr obslužné rutiny, jak je popsáno v Ověření parametru.Pokud provádění může pokračovat, funkce vrátí NULL a nastaví errno na EINVAL.

Rutinní mapování obecného textu

Rutina Tchar.h

_UNICODE a _MBCS nejsou definovány

_MBCS definováno

_UNICODE definováno

_tcsspnp

_strspnp

_mbsspnp

_wcsspnp

_strspnp a _wcsspnp jsou verze jednobajtového znaku a širokoznaká verze _mbsspnp._strspnp a _wcsspnp se jinak chovají stejně jako _mbsspnp. Tyto jsou k dispozici pouze pro toto mapování a není vhodné používat je z jakéhokoli jiného důvodu.Další informace naleznete v tématu Použití mapování obecného textu a Mapování obecného textu.

_mbsspnp_lje totožný s tím rozdílem, že místo toho používá parametr národního prostředí.Další informace naleznete v tématu Národní prostředí.

Požadavky

Rutina

Požadované záhlaví

_mbsspnp

<mbstring.h>

_strspnp

<tchar.h>

_wcsspnp

<tchar.h>

Další informace o kompatibilitě naleznete v tématu Kompatibilita.

Příklad

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

Výsledek

abbage

Ekvivalent v rozhraní .NET Framework

Nelze použít. Pokud chcete volat standardní funkci jazyka C, použijte PInvoke. Další informace naleznete v tématu Příklady vyvolání platformy.

Viz také

Referenční dokumentace

Zacházení s řetězci (CRT)

Národní prostředí

Výklad sekvencí vícebajtových znaků

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