Udostępnij za pośrednictwem


strspn, wcsspn, _mbsspn, _mbsspn_l

Zwraca indeks pierwszego wystąpienia znaku w ciągu, który nie należy do zestawu znaków.

Ważna uwagaWażne

_mbsspn i _mbsspn_l nie można używać w aplikacjach korzystających ze środowiska wykonawczego systemu Windows.Aby uzyskać więcej informacji, zobacz Funkcje CRT nieobsługiwane przez /ZW.

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
    Ciąg zakończony wartością null do przeszukania.

  • strCharSet
    Zestaw znaków zakończony znakiem null.

  • locale
    Ustawienia regionalne do użycia.

Wartość zwracana

Zwraca wartość całkowitą określającą długość podciągu w str który składa się w całości ze znaków w strCharSet*.* Jeśli str zaczyna się od znaku nie w strCharSet*,* funkcja zwraca 0.

Uwagi

strspn funkcja zwraca indeks pierwszego wystąpienia znaku w str , który nie należy do zestawu znaków w strCharSet.Wyszukiwanie nie obejmuje kończących się pustych znaków.

wcsspn i _mbsspn są wersjami znaków dwubajtowych i znaków wielobajtowych strspn**.** Argumenty wcsspn są ciągami znaków dwubajtowych; te z _mbsspn są ciągami znaków wielobajtowych._mbsspn sprawdza poprawność parametrów.Jeśli str lub strCharSet ma wartośćNULL, zostanie wywołana procedura obsługi nieprawidłowego parametru, zgodnie z opisem w Sprawdzanie poprawności parametru .Jeśli wykonanie może być kontynuowane, _mbspn ustawia errno jako EINVAL i zwraca 0.strspn i wcsspn nie sprawdzają poprawności swoich parametrów.Te trzy funkcje w innych wypadkach zachowują się identycznie.

Wartość wyjściowa jest zależna od konfiguracji ustawień kategorii LC_CTYPE ustawień regionalnych; zobacz setlocale, aby uzyskać więcej informacji.Wersje tych funkcji, które nie mają przyrostka _l używają bieżących ustawień regionalnych dla wszelkich zachowań zależnych od ustawień lokalnych; wersje, które mają przyrostek _l są identyczne, z tą różnicą, że w zamian korzystają z przekazanego parametru ustawień regionalnych.Aby uzyskać więcej informacji, zobacz Regionalne.

Rutynowe mapowania zwykłego tekstu

Procedura Tchar.h

_UNICODE & _MBCS nie zdefiniowano

_MBCS zdefiniowano

_UNICODE zdefiniowany

_tcsspn

strspn

_mbsspn

wcsspn

Nie dotyczy

Nie dotyczy

_mbsspn_l

Nie dotyczy

Wymagania

Procedura

Wymagany nagłówek

strspn

<Ciąg>

wcsspn

<ciągo.h> lub <wchar.h>

_mbsspn, _mbsspn_l

<mbCiąg.h>

Dodatkowe informacje o zgodności – zobacz: Zgodność.

Przykład

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

Odpowiednik w programie .NET Framework

Podciąg systemu ciągów

Zobacz też

Informacje

Manipulowanie ciągami (CRT)

Regionalne

Interpretacja wielobajtowych sekwencji znaków

_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