strspn
, wcsspn
, , _mbsspn
_mbsspn_l
Vrátí index prvního znaku v řetězci, který nepatří do zadané sady znaků.
Důležité
_mbsspn
a _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.
wcsspn
a _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 definovaný |
_UNICODE definovaný |
---|---|---|---|
_tcsspn |
strspn |
_mbsspn |
wcsspn |
není k dispozici | není k dispozici | _mbsspn_l |
není k dispozici |
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