strcspn, wcscspn, _mbscspn, _mbscspn_l
Zwraca indeks pierwszego wystąpienia znaku w ciągu, który należy do zestawu znaków.
Ważne |
---|
_mbschri _mbschr_lnie można używać w aplikacji, których wykonywanie w czasie wykonywania systemu Windows.Aby uzyskać więcej informacji, zobacz CRT funkcje nie obsługiwane przez /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
Zakończony wartością zerową szukana.strCharSet
Zestaw znaków zakończony znakiem null.locale
Ustawienia regionalne używane.
Wartość zwracana
Funkcje te zwracają indeks pierwszego znaku w str znajdujący się w strCharSet.Jeśli żadna z znaków w str znajduje się w strCharSet, a następnie zwracana jest wartość długości str.
Nie zwraca żadnej wartości jest zarezerwowany wystąpił błąd.
Uwagi
wcscspni _mbscspn szerokich znaków i znaków wielobajtowych wersje strcspn.Argumenty wcscspn są ciągami szerokich znaków; tych z _mbscspn są ciągami znaków wielobajtowych.
_mbscspnsprawdza poprawność jego parametry.Jeśli każda str lub strCharSet jest pusty wskaźnik, program obsługi nieprawidłowy parametr jest wywoływana, zgodnie z opisem w Sprawdzanie poprawności parametru.Jeśli wykonanie może kontynuować, funkcja zwraca wartość 0 i zestawy errno do EINVAL.strcspni wcscspn nie są zgodne z nimi parametrów.Zmienia tych trzech funkcji zachowanie takich samych nazwach.
Wartość produkcji jest zależny od ustawienia z LC_CTYPE kategorii ustawienie regionalne tzn. zobacz setlocale Aby uzyskać więcej informacji.Wersje te funkcje, bez _l sufiks Użyj bieżących ustawień regionalnych tego zachowania zależne od ustawień lokalnych; wersje z _l sufiks są identyczne z tym, że używają zamiast przekazany parametr ustawień regionalnych.Aby uzyskać więcej informacji, zobacz Ustawienia regionalne.
Tekst rodzajowy rutynowych mapowania
TCHAR.Rozpoczęto wykonywanie procedury h |
_UNICODE & _MBCS nie zdefiniowany |
_MBCS, definicja |
_UNICODE, definicja |
---|---|---|---|
_tcscspn |
strcspn |
_mbscspn |
wcscspn |
n/a |
n/a |
_mbscspn_l |
n/a |
Wymagania
Rozpoczęto wykonywanie procedury |
Wymaganego nagłówka |
---|---|
strcspn |
<string.h> |
wcscspn |
<string.h> lub <wchar.h> |
_mbscspn, _mbscspn_l |
<mbstring.h> |
Aby uzyskać dodatkowe informacje o zgodności, zobacz zgodności we wprowadzeniu.
Przykład
// 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( "", "" );
}
Odpowiednik w programie .NET Framework
Zobacz też
Informacje
Interpretacja sekwencje znaków wielobajtowych
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