Sdílet prostřednictvím


strspn, wcsspn, _mbsspn, _mbsspn_l

Vrátí index prvního znaku v řetězci, který nepatří do zadané sady znaků.

Důležité

_mbsspna _mbsspn_l nelze je použít v aplikacích, které se spouští v prostředí Windows Runtime. Další informace najdete v tématu Funkce CRT, které nejsou v aplikacích Univerzální platforma Windows podporované.

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

Parametry

str
Řetězec ukončený hodnotou null, který se má prohledávat.

strCharSet
Znaková sada s ukončenou hodnotou null.

locale
Národní prostředí, které se má použít.

Vrácená hodnota

Vrátí celočíselnou hodnotu určující délku podřetědce, str která se skládá výhradně z znaků v strCharSet. Pokud str začíná znakem, který není v strCharSet, vrátí funkce hodnotu 0.

Poznámky

Funkce strspn vrátí index prvního znaku, který str nepatří do sady znaků v strCharSet. Hledání neobsahuje ukončující znaky null.

wcsspna _mbsspn jsou širokoznakové a vícebajtové verze .strspn Argumenty jsou řetězce širokého wcsspn znaku. Argumenty _mbsspn jsou řetězce s vícebajtovými znaky. _mbsspn ověří jeho parametry. Pokud str nebo strCharSet je NULL, je vyvolána neplatná obslužná rutina parametru, jak je popsáno v ověření parametru . Pokud je spuštění povoleno pokračovat, _mbspn nastaví errno hodnotu EINVAL 0 a vrátí hodnotu 0. strspn a wcsspn neověřujte jejich parametry. Tyto tři funkce se chovají stejně jinak.

Výstupní hodnota je ovlivněna nastavením LC_CTYPE nastavení kategorie národního prostředí. Další informace najdete na webu setlocale. Verze těchto funkcí bez _l přípony používají aktuální národní prostředí pro toto chování závislé na národním prostředí. Verze s _l příponou jsou shodné s tím rozdílem, že místo toho používají předaný parametr národního prostředí. Další informace naleznete v tématu Národní prostředí.

Ve výchozím nastavení je globální stav této funkce vymezen na aplikaci. Chcete-li toto chování změnit, přečtěte si téma Globální stav v CRT.

Mapování rutin obecného textu

Rutina TCHAR.H _UNICODE a _MBCS není definován _MBCS Definovány _UNICODE Definovány
_tcsspn strspn _mbsspn wcsspn
N/a N/a _mbsspn_l N/a

Požadavky

Rutina Požadovaný hlavičkový soubor
strspn <string.h>
wcsspn <string.h> nebo <wchar.h>
_mbsspn, _mbsspn_l <mbstring.h>

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

Příklad

// 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

Viz také

Manipulace s řetězci
Národní prostředí
Interpretace vícebajtových sekvencí znaků
_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