Exporter (0) Imprimer
Développer tout
and
div
eof
not
or
xor
Développer Réduire
Cet article a fait l'objet d'une traduction manuelle. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte. Informations supplémentaires.
Traduction
Source

strstr, wcsstr, _mbsstr, _mbsstr_l

Renvoie un pointeur à la première occurrence d'une chaîne recherchée dans une chaîne.

Remarque importante Important

_mbsstr and _mbsstr_l ne peuvent pas être utilisés dans les applications qui s'exécutent dans le Windows Runtime. Pour plus d'informations, consultez Fonctions CRT non prises en charge avec /ZW.

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

Chaîne terminée par Null à trouver.

strSearch

Chaîne terminée par Null à trouver.

locale

Paramètres régionaux à utiliser.

Renvoie un pointeur vers la première occurrence de strSearch dans un str, ou NULL si strSearch n'apparaît pas dans str. Si strSearch pointe vers une chaîne de longueur nulle, la fonction renvoie str.

La fonction strstr renvoie un pointeur vers la première occurrence de strSearch dans str. La recherche ne contient pas les caractères de fin null. wcsstr est la version à caractères larges de strstr et _mbsstr la version à caractères multi-octets. Les arguments et la valeur de retour de wcsstr sont des chaînes à caractères larges ; ceux de _mbsstr sont des chaînes de caractères multioctets. _mbsstr valide ses paramètres. Si str ou strSearch est NULL, le gestionnaire de paramètres non valides est appelé, comme décrit dans Validation de paramètre . Si l'exécution est autorisée à se poursuivre, _mbsstr renvoie 0 et attribue à errno la valeur EINVAL. strstr et wcsstr ne valident pas leurs paramètres. Ces trois fonctions se comportent sinon de façon identique.

Note de sécurité Note de sécurité

Ces fonctions peuvent entraîner une menace de dépassement de mémoire tampon. Les dépassements de mémoire tampon peuvent être utilisés pour attaquer un système car ils peuvent autoriser l'exécution du code arbitraire, ce qui peut provoquer une augmentation de privilège injustifiée. Pour plus d'informations, consultez Solutions contre les dépassements de mémoire tampon.

En C, ces fonctions acceptent un pointeur const comme premier argument. En C++, deux surcharges sont disponibles. La surcharge amenant un pointeur vers const renvoie un pointeur vers const ; la version qui amène un pointeur vers non-const renvoie un pointeur vers non-const. La macro _CONST_CORRECT_OVERLOADS est définie si les versions const et non-const de ces fonctions sont disponibles. Si vous avez besoin d'un comportement non-const pour les deux surcharges C++, définissez le symbol _CONST_RETURN.

La valeur de la sortie est affectée par les valeurs de vos paramètres régionaux de LC_CTYPE ; consultez setlocale, _wsetlocale pour plus d'informations. Les versions de ces fonctions n'ayant pas le suffixe _l utilisent les paramètres régionaux pour ce comportement dépendant de vos paramètres régionaux ; les versions avec le suffixe _l sont identiques, sauf qu'elles utilisent à la place les paramètres régionaux transmis. Pour plus d'informations, consultez Paramètres régionaux.

Mappages de routines de texte générique

Routine TCHAR.H

_UNICODE & _MBCS non définis

_MBCS défini

_UNICODE défini

_tcsstr

strstr

_mbsstr

wcsstr

N/A

N/A

_mbsstr_l

N/A

Routine

En-tête requis

strstr

<string.h>

wcsstr

<string.h> ou <wchar.h>

_mbsstr , _mbsstr_l

<mbstring.h>

Pour plus d'informations à propos de la compatibilité, consultez Compatibilité.

// 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 );
}
Chaîne à analyser.
   Le rapide chien marron sauta au-dessus du renard paresseux
            1         2         3         4         5
   12345678901234567890123456789012345678901234567890

paresseux trouvé à la position 36

Ajouts de la communauté

AJOUTER
Afficher:
© 2015 Microsoft