Condividi tramite


_strspnp, _wcsspnp, _mbsspnp, _mbsspnp_l

Restituisce un puntatore al primo carattere in una determinata stringa che non si trova in un'altra stringa specificata.

Importante

_mbsspnp e _mbsspnp_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

char *_strspnp(
   const char *str,
   const char *charset
);
wchar_t *_wcsspnp(
   const unsigned wchar_t *str,
   const unsigned wchar_t *charset
);
unsigned char *_mbsspnp(
   const unsigned char *str,
   const unsigned char *charset
);
unsigned char *_mbsspnp_l(
   const unsigned char *str,
   const unsigned char *charset,
   _locale_t locale
);

Parametri

str
Stringa con terminazione Null in cui eseguire la ricerca.

charset
Set di caratteri con terminazione Null.

locale
Impostazioni locali da usare.

Valore restituito

_strspnp, _wcsspnpe _mbsspnp restituiscono un puntatore al primo carattere in str che non appartiene al set di caratteri in charset. Ognuna di queste funzioni restituisce NULL se str è costituita interamente da caratteri di charset. Per ognuna di queste routine non è riservato alcun valore restituito per indicare un errore.

Osservazioni:

La _mbsspnp funzione restituisce un puntatore al carattere multibyte che è il primo carattere in str che non appartiene al set di caratteri in charset. _mbsspnp riconosce le sequenze di caratteri multibyte in base alla tabella codici multibyte attualmente in uso. La ricerca non include caratteri Null di terminazione.

str Se o charset è un puntatore Null, questa funzione richiama il gestore di parametri non validi, come descritto in Convalida dei parametri. Se l'esecuzione può continuare, la funzione restituisce NULL e imposta errno su EINVAL.

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
_tcsspnp _strspnp _mbsspnp _wcsspnp

_strspnp e _wcsspnp sono versioni con caratteri a byte singolo e caratteri wide di _mbsspnp. _strspnp e _wcsspnp si comportano in modo identico a _mbsspnp in caso contrario, vengono forniti solo per questo mapping e non devono essere usati per altri motivi. Per altre informazioni, vedere Uso di mapping di testo generico e mapping di testo generico.

_mbsspnp_l è identica, ma usa il parametro delle impostazioni locali passato. Per altre informazioni, vedere Locale.

Requisiti

Ciclo Intestazione obbligatoria
_mbsspnp <mbstring.h>
_strspnp <tchar.h>
_wcsspnp <tchar.h>

Per altre informazioni sulla compatibilità, vedere Compatibility (Compatibilità).

Esempio

// crt_mbsspnp.c
#include <mbstring.h>
#include <stdio.h>

int main( void ) {
   const unsigned char string1[] = "cabbage";
   const unsigned char string2[] = "c";
   unsigned char *ptr = 0;
   ptr = _mbsspnp( string1, string2 );
   printf( "%s\n", ptr);
}

Output

abbage

Vedi anche

Manipolazione delle stringhe
impostazioni locali
Interpretazione di sequenze di caratteri multibyte
strspn, wcsspn, _mbsspn, _mbsspn_l
strncat_s, _strncat_s_l, wcsncat_s, _wcsncat_s_l, _mbsncat_s, _mbsncat_s_l
strncmp, wcsncmp, _mbsncmp, _mbsncmp_l
strncpy_s, _strncpy_s_l, wcsncpy_s, _wcsncpy_s_l, _mbsncpy_s, _mbsncpy_s_l
_strnicmp, _wcsnicmp, _mbsnicmp, _strnicmp_l, _wcsnicmp_l, _mbsnicmp_l
strrchr, wcsrchr, _mbsrchr, _mbsrchr_l