Este artigo foi traduzido por máquina. Para visualizar o arquivo em inglês, marque a caixa de seleção Inglês. Você também pode exibir o texto Em inglês em uma janela pop-up, movendo o ponteiro do mouse sobre o texto.
Tradução
Inglês

strstr, wcsstr, _mbsstr, _mbsstr_l

Retornar um ponteiro para a primeira ocorrência de uma seqüência de Pesquisar em uma seqüência de caracteres.


char *strstr(
   const char *str,
   const char *strSearch 
); // C only
char *strstr(
   char *str,
   const char *strSearch 
); // C++ only
const char *strstr(
   const char *str,
   const char *strSearch 
); // C++ only
wchar_t *wcsstr(
   const wchar_t *str,
   const wchar_t *strSearch 
); // C only
wchar_t *wcsstr(
   wchar_t *str,
   const wchar_t *strSearch 
); // C++ only
const wchar_t *wcsstr(
   const wchar_t *str,
   const wchar_t *strSearch 
); // C++ only
unsigned char *_mbsstr(
   const unsigned char *str,
   const unsigned char *strSearch 
); // C only
unsigned char *_mbsstr(
   unsigned char *str,
   const unsigned char *strSearch 
); // C++ only
const unsigned char *_mbsstr(
   const unsigned char *str,
   const unsigned char *strSearch 
); // C++ only
unsigned char *_mbsstr_l(
   const unsigned char *str,
   const unsigned char *strSearch,
   _locale_t locale
); // C only
unsigned char *_mbsstr_l(
   unsigned char *str,
   const unsigned char *strSearch,
   _locale_t locale
); // C++ only
const unsigned char *_mbsstr_l(
   const unsigned char *str,
   const unsigned char *strSearch,
   _locale_t locale
); // C++ only

str

Seqüência terminada por caractere nulo para pesquisar.

strSearch

Seqüência terminada por caractere nulo para pesquisar.

locale

Localidade usar.

Retorna um ponteiro para a primeira ocorrência de strSearch em str, ou NULL Se strSearch não é exibido na str. If strSearch aponta para uma seqüência de caracteres de comprimento zero, a função retornará str.

The strstr função retorna um ponteiro para a primeira ocorrência de strSearch em str. A Pesquisar não inclui caracteres nulo de terminação. wcsstr e _mbsstrsão versões de caractere largo e caracteres de multibyte de strstr. Os argumentos e o valor retornado do wcsstr são caractere largos strings; as de _mbsstr são seqüências de caractere de multibyte. _mbsstr valida os parâmetros. If str ou strSearch é 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, _mbsstr Define errno para EINVAL e retorna 0. strstr e wcsstr não validam seus parâmetros. Especifique estas três funções identicamente outro comportam.

Observação de segurançaObservação de segurança:

Essas funções incorrer em uma ameaça potencial colocada um problema de saturação de buffer. Problemas de saturação de buffer são um método de ataque do sistema, resultando em uma elevação do privilégio unwarranted freqüente. Para obter mais informações, consulte Evitar saturações de buffer.

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; as versões com o _l sufixo são idênticas exceto que usarem 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

_tcsstr

strstr

_mbsstr

wcsstr

n/d

n/d

_mbsstr_l

n/d

Rotina

Cabeçalho necessário

strstr

<string.h>

wcsstr

<string.h> ou <wchar.h>

_mbsstr , _mbsstr_l

<mbstring.h>

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

// crt_strstr.c

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

char str[] =    "lazy";
char string[] = "The quick brown dog jumps over the lazy fox";
char fmt1[] =   "         1         2         3         4         5";
char fmt2[] =   "12345678901234567890123456789012345678901234567890";

int main( void )
{
   char *pdest;
   int  result;
   printf( "String to be searched:\n   %s\n", string );
   printf( "   %s\n   %s\n\n", fmt1, fmt2 );
   pdest = strstr( string, str );
   result = (int)(pdest - string + 1);
   if ( pdest != NULL )
      printf( "%s found at position %d\n", str, result );
   else
      printf( "%s not found\n", str );
}
String to be searched:    The quick brown dog jumps over the lazy fox             1         2         3         4         5    12345678901234567890123456789012345678901234567890  lazy found at position 36

Contribuições da comunidade

Mostrar: