Compartilhar via


_strspnp, _wcsspnp, _mbsspnp, _mbsspnp_l

Retorna um ponteiro para o primeiro caractere de uma determinada cadeia de caracteres que não esteja em outra cadeia de caracteres especificada.

Importante

_mbsspnp e _mbsspnp_l não podem ser usados em aplicativos executados no Tempo de Execução do Windows.Para obter mais informações, consulte Funções CRT sem suporte pelo /ZW.

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

Parâmetros

  • str
    Cadeia de caracteres terminada com Null para pesquisa.

  • charset
    Conjunto de caracteres terminados em nulo.

  • locale
    Localidade a ser usada.

Valor de retorno

_strspnp, _wcsspnp e _mbsspnp retornam um ponteiro para o primeiro caractere em str que não pertence ao conjunto de caracteres em charset. Cada uma dessas funções retorna NULL se str consistir inteiramente em caracteres de charset*.* Para cada uma dessas rotinas, nenhum valor de retorno é reservado para indicar um erro.

Comentários

A função _mbsspnp retorna um ponteiro para o caractere multibyte que é o primeiro caractere em str que não pertence ao conjunto de caracteres em charset. _mbsspnp reconhece sequências de caracteres multibyte de acordo com a página de código multibyte em uso no momento. A pesquisa não inclui o encerramento em caracteres nulos.

Se str ou charset for um ponteiro nulo, a função chamará o manipulador de parâmetro inválido, como descrito em Validação do parâmetro. Se a execução puder continuar, a função retornará NULL e definirá errno como EINVAL.

Mapeamentos da rotina de texto genérico

Rotina Tchar.h

_UNICODE e _MBCS não definidos

_MBCS definido

_UNICODE definido

_tcsspnp

_strspnp

_mbsspnp

_wcsspnp

_strspnp e _wcsspnp são versões de caracteres largos e de caracteres de byte único de _mbsspnp. De outra maneira, _strspnp e _wcsspnp se comportam de forma idêntica a _mbsspnp; são fornecidos apenas para esse mapeamento e não devem ser usados por qualquer outro motivo. Para obter mais informações, consulte Usando mapeamentos de texto genérico e Mapeamentos de texto genérico.

_mbsspnp_lé idêntico, exceto que usa o parâmetro de localidade passado no lugar. Para obter mais informações, consulte Localidade.

Requisitos

Rotina

Cabeçalho necessário

_mbsspnp

<mbstring.h>

_strspnp

<tchar.h>

_wcsspnp

<tchar.h>

Para obter mais informações sobre compatibilidade, consulte Compatibilidade.

Exemplo

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

Saída

abbage

Equivalência do .NET Framework

Não aplicável. Para chamar a função padrão de C, use PInvoke. Para obter mais informações, consulte Exemplos de chamadas de plataformas.

Consulte também

Referência

Manipulação da cadeia de caracteres (CRT)

Localidade

Interpretação de sequências de caracteres 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