strcspn, wcscspn, _mbscspn, _mbscspn_l
Vrátí index prvního výskytu v řetězci znaku, který patří do sady znaků.
Důležité |
---|
_mbschr a _mbschr_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. |
size_t strcspn(
const char *str,
const char *strCharSet
);
size_t wcscspn(
const wchar_t *str,
const wchar_t *strCharSet
);
size_t _mbscspn(
const unsigned char *str,
const unsigned char *strCharSet
);
size_t _mbscspn_l(
const unsigned char *str,
const unsigned char *strCharSet,
_locale_t locale
);
Parametry
str
Hledaný řetězec zakončený hodnotou null.strCharSet
Sada znaků zakončených znakem null.locale
Použité národní prostředí.
Vrácená hodnota
Tato funkce vrátí index prvního znaku v str, který je v strCharSet.Pokud žádný ze znaků v str není v strCharSet, pak je návratová hodnota délka str.
Není rezervována žádná vrácená hodnota pro indikaci chyby.
Poznámky
wcscspn a _mbscspn jsou širokoznaká verze a vícebajtová znaková verze strcspn.Argumenty wcscspn jsou širokoznaké řetězce. Hodnoty _mbscspn jsou vícebajtové znakové řetězce.
_mbscspn ověří jeho parametry.Pokud str nebo strCharSet je ukazatel s hodnotou null, je vyvolán neplatný parametr obslužné rutiny, jak je popsáno v Ověření parametru.Pokud provádění může pokračovat, funkce vrátí hodnotu 0 a nastaví errno na EINVAL.strcspn a wcscspn neověří jejich parametry.Tyto tři funkce se chovají identicky jinak.
Výstupní hodnota je ovlivněna nastavením kategorie LC_CTYPE národního prostředí; viz setlocale pro další informace.Verze těchto funkcí bez přípony _l používají aktuální národní prostředí pro toto chování závislé na národním prostředí. Verze s příponou _l jsou stejné s tím rozdílem, že používají předaný parametr národního prostředí.Další informace naleznete v tématu Národní prostředí.
Rutinní mapování obecného textu
Rutina TCHAR.H |
_UNICODE & _MBCS není definováno |
_MBCS definováno |
_UNICODE definováno |
---|---|---|---|
_tcscspn |
strcspn |
_mbscspn |
wcscspn |
n/a |
n/a |
_mbscspn_l |
n/a |
Požadavky
Rutina |
Požadované záhlaví |
---|---|
strcspn |
<string.h> |
wcscspn |
<string.h> nebo <wchar.h> |
_mbscspn, _mbscspn_l |
<mbstring.h> |
Další informace o kompatibilitě naleznete v tématu Kompatibilita.
Příklad
// crt_strcspn.c
#include <string.h>
#include <stdio.h>
void test( const char * str, const char * strCharSet )
{
int pos = strcspn( str, strCharSet );
printf( "strcspn( \"%s\", \"%s\" ) = %d\n", str, strCharSet, pos );
}
int main( void )
{
test( "xyzbxz", "abc" );
test( "xyzbxz", "xyz" );
test( "xyzbxz", "no match" );
test( "xyzbxz", "" );
test( "", "abc" );
test( "", "" );
}
Ekvivalent v rozhraní .NET Framework
Viz také
Referenční dokumentace
Výklad sekvencí vícebajtových znaků
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