strpbrk, wcspbrk, _mbspbrk, _mbspbrk_l

Examine as seqüências de caractere para caractere em conjuntos de caractere especificado.

char *strpbrk(
   const char *str,
   const char *strCharSet 
); // C only
char *strpbrk(
   char *str,
   const char *strCharSet 
); // C++ only
const char *strpbrk(
   const char *str,
   const char *strCharSet 
); // C++ only
wchar_t *wcspbrk(
   const wchar_t *str,
   const wchar_t *strCharSet 
); // C only
wchar_t *wcspbrk(
   wchar_t *str,
   const wchar_t *strCharSet 
); // C++ only
const wchar_t *wcspbrk(
   const wchar_t *str,
   const wchar_t *strCharSet 
); // C++ only
unsigned char *_mbspbrk(
   const unsigned char *str,
   const unsigned char *strCharSet 
); // C only
unsigned char *_mbspbrk(
   unsigned char *str,
   const unsigned char *strCharSet 
); // C++ only
const unsigned char *_mbspbrk(
   const unsigned char *str,
   const unsigned char *strCharSet 
); // C++ only
unsigned char *_mbspbrk_l(
   const unsigned char *str,
   const unsigned char *strCharSet,
   _locale_t locale
); // C only
unsigned char *_mbspbrk_l(
   unsigned char *str,
   const unsigned char *strCharSet,
   _locale_t locale
); // C++ only
const unsigned char *_mbspbrk_l(
   const unsigned char *str,
   const unsigned char* strCharSet,
   _locale_t locale
); // C++ only

Parâmetros

  • str
    Seqüência de caracteres terminada com caractere nulo, pesquisada.

  • strCharSet
    Conjunto de caracteres terminada com caractere nulo.

  • locale
    Localidade usar.

Valor de retorno

Retorna um ponteiro para a primeira ocorrência de qualquer caractere de strCharSet em str, ou um NULL ponteiro se os argumentos de seqüência de caracteres de dois não possuem caracteres em comum.

Comentários

The strpbrk função retorna um ponteiro para a primeira ocorrência de um caractere em str que pertença ao conjunto de caracteres strCharSet. A Pesquisar não inclui o caractere nulo de terminação.

wcspbrk e _mbspbrksão versões de caractere largo e caracteres de multibyte de strpbrk. Os argumentos e o valor retornado do wcspbrk são caractere largos strings; as de _mbspbrk são seqüências de caractere de multibyte.

_mbspbrk valida os parâmetros. If str ou strCharSet é NULL, o manipulador de parâmetro inválido é chamado, conforme descrito em Validação de parâmetro . Se a execução for permitida para continuar, _mbspbrk Retorna NULL e conjuntos errno para EINVAL. strpbrk e wcspbrk não validam seus parâmetros. Especifique estas três funções identicamente outro comportam.

_mbspbrk é semelhante a _mbscspn exceto pelo fato de que _mbspbrk Retorna um ponteiro em vez de um valor de tipo size_t.

No C, essas funções utilizam um const ponteiro para o primeiro argumento. No C++, estão disponível duas sobrecargas.A sobrecarga levando um ponteiro para const Retorna um ponteiro para const; a versão que leva um ponteiro para não-const Retorna um ponteiro para não-const. _CONST_CORRECT_OVERLOADS macro está definido se ambos os o const e não-const estão disponível versões dessas funções. Se você precisar de não-const comportamento para ambas as sobrecargas de C++, definir _CONST_RETURN símbolo.

O valor de saída é afetado pela configuração do LC_CTYPE categoria de configuração da localidade; para obter mais informações, consulte setlocale.As versões dessas funções sem o _l sufixo use a localidade corrente para esse comportamento dependente de localidade; a versão com o _l sufixo é idêntico, exceto pelo fato de que ele utiliza o parâmetro de localidade passado em vez disso. For more information, see Localidade.

Mapeamentos de rotina de texto genérica

Rotina TCHAR.H

_UNICODE & _MBCS não definido

_MBCS definido

_UNICODE definido

_tcspbrk

strpbrk

_mbspbrk

wcspbrk

n/d

n/d

_mbspbrk_l

n/d

Requisitos

Rotina

Cabeçalho necessário

strpbrk

<string.h>

wcspbrk

<string.h> ou <wchar.h>

_mbspbrk, _mbspbrk_l

<mbstring.h>

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

Exemplo

// crt_strpbrk.c

#include <string.h>
#include <stdio.h>

int main( void )
{
   char string[100] = "The 3 men and 2 boys ate 5 pigs\n";
   char *result = NULL;

   // Return pointer to first digit in "string".
   printf( "1: %s\n", string );
   result = strpbrk( string, "0123456789" );
   printf( "2: %s\n", result++ );
   result = strpbrk( result, "0123456789" );
   printf( "3: %s\n", result++ );
   result = strpbrk( result, "0123456789" );
   printf( "4: %s\n", result );
}

1: The 3 men and 2 boys ate 5 pigs  2: 3 men and 2 boys ate 5 pigs  3: 2 boys ate 5 pigs  4: 5 pigs

Equivalente do NET Framework

sistema::String::IndexOfAny

Consulte também

Referência

Manipulação de seqüência de caracteres (CRT)

Localidade

Interpretação de seqüências de caractere multibyte

strcspn, wcscspn, _mbscspn, _mbscspn_l

strchr, wcschr, _mbschr, _mbschr_l

strrchr, wcsrchr, _mbsrchr, _mbsrchr_l