strspn
, wcsspn
, _mbsspn
_mbsspn_l
Restituisce l'indice del primo carattere in una stringa che non appartiene a un set specificato di caratteri.
Importante
_mbsspn
e _mbsspn_l
non possono essere usati nelle applicazioni eseguite in Windows Runtime. Per altre informazioni, vedere Funzioni CRT non supportate nelle app della piattaforma UWP (Universal Windows Platform).
Sintassi
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
);
Parametri
str
Stringa con terminazione Null in cui eseguire la ricerca.
strCharSet
Set di caratteri con terminazione Null.
locale
Impostazioni locali da usare.
Valore restituito
Restituisce un valore intero che specifica la lunghezza della sottostringa in str
costituita interamente da caratteri in strCharSet
. Se str
inizia con un carattere diverso da , strCharSet
la funzione restituisce 0.
Osservazioni:
La strspn
funzione restituisce l'indice del primo carattere in str
che non appartiene al set di caratteri in strCharSet
. La ricerca non include caratteri Null di terminazione.
wcsspn
e _mbsspn
sono versioni con caratteri wide e caratteri multibyte di strspn
. Gli argomenti di sono stringhe di wcsspn
caratteri wide. Gli argomenti di sono stringhe di _mbsspn
caratteri multibyte. _mbsspn
convalida i propri parametri. Se str
o strCharSet
è NULL
, viene richiamato il gestore di parametri non validi, come descritto in Convalida dei parametri . Se l'esecuzione può continuare, _mbspn
imposta errno
su EINVAL
e restituisce 0. strspn
e wcsspn
non convalidare i relativi parametri. A parte ciò, queste tre funzioni si comportano in modo identico.
Il valore di output è interessato dall'impostazione dell'impostazione LC_CTYPE
della categoria delle impostazioni locali. Per ulteriori informazioni, vedere setlocale
. Le versioni di queste funzioni senza il suffisso _l
usano le impostazioni locali correnti per questo comportamento dipendente dalle impostazioni locali. Le versioni con il suffisso _l
sono identiche ma usano il parametro passato relativo alle impostazioni locali. Per altre informazioni, vedere Locale.
Per impostazione predefinita, lo stato globale di questa funzione è limitato all'applicazione. Per modificare questo comportamento, vedere Stato globale in CRT.
Mapping di routine di testo generico
Routine TCHAR.H | _UNICODE e _MBCS non definito |
_MBCS definito |
_UNICODE definito |
---|---|---|---|
_tcsspn |
strspn |
_mbsspn |
wcsspn |
n/d | n/d | _mbsspn_l |
n/d |
Requisiti
Ciclo | Intestazione obbligatoria |
---|---|
strspn |
<string.h> |
wcsspn |
<string.h> o <wchar.h> |
_mbsspn , _mbsspn_l |
<mbstring.h> |
Per altre informazioni sulla compatibilità, vedere Compatibility (Compatibilità).
Esempio
// 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
Vedi anche
Manipolazione delle stringhe
impostazioni locali
Interpretazione di sequenze di caratteri multibyte
_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