_strrev, _wcsrev, _mbsrev, _mbsrev_l

 

Pour obtenir la dernière documentation sur Visual Studio 2017 RC, consultez Documentation Visual Studio 2017 RC.

Inverse les caractères d’une chaîne.

System_CAPS_ICON_important.jpg Important

Les fonctions _mbsrev et _mbsrev_l ne peuvent pas être utilisées dans les applications qui s'exécutent dans Windows Runtime. Pour plus d’informations, consultez Fonctions CRT non prises en charge avec /ZW.

char *_strrev(  
   char *str   
);  
wchar_t *_wcsrev(  
   wchar_t *str   
);  
unsigned char *_mbsrev(  
   unsigned char *str   
);  
unsigned char *_mbsrev_l(  
   unsigned char *str,  
   _locale_t locale   
);  

Paramètres

str
Chaîne terminée par null à inverser.

locale
Paramètres régionaux à utiliser.

Retourne un pointeur vers la chaîne modifiée. Aucune valeur de retour n'est réservée pour indiquer une erreur.

Le _strrev fonction inverse l’ordre des caractères dans string. Le caractère null de fin reste en place. _wcsrev et _mbsrev sont des versions à caractères larges et à caractères multioctets de _strrev. Les arguments et la valeur de retour de _wcsrev sont des chaînes de caractères larges ; ceux de _mbsrev sont des chaînes de caractères multioctets. Pour _mbsrev, l’ordre des octets dans chaque caractère multioctet dans string n’est pas modifié. Ces trois fonctions se comportent sinon de façon identique.

_mbsrevvalide ses paramètres. Si le paramètre string1 ou string2 est un pointeur null, le Gestionnaire de paramètre non valide est appelé, comme décrit dans Validation de paramètre. Si l'exécution est autorisée à continuer, _mbsrev retourne NULL et définit errno à EINVAL. _strrev et _wcsrev ne vérifient pas leurs paramètres.

La valeur de sortie est affectée par la définition de la LC_CTYPE catégorie de paramètres régionaux ; consultez setlocale, _wsetlocale pour plus d’informations. Les versions de ces fonctions sont identiques, sauf que ceux qui n’ont le _l suffixe utilisent les paramètres régionaux et ceux qui ont le_l suffixe à la place utiliser les paramètres régionaux qui lui sont passées. Pour plus d’informations, consultez Locale.

System_CAPS_ICON_important.jpg Important

Ces fonctions peuvent être vulnérables aux menaces de dépassement de mémoire tampon. Les dépassements de mémoire tampon peuvent être utilisés pour les attaques du système, car ils peuvent provoquer une élévation des privilèges injustifiée. Pour plus d’informations, consultez Solutions contre les dépassements de mémoire tampon.

Mappages de routines de texte générique

Routine TCHAR.H_UNICODE et _MBCS non définis_MBCS défini_UNICODE défini
_tcsrev_strrev_mbsrev_wcsrev
n/an/a_mbsrev_ln/a
RoutineEn-tête requis
_strrev<string.h>
_wcsrev<string.h> ou <wchar.h>
_mbsrev, _mbsrev_l<mbstring.h>

Pour plus d'informations sur la compatibilité, voir Compatibilité.

// crt_strrev.c  
// This program checks a string to see  
// whether it is a palindrome: that is, whether  
// it reads the same forward and backward.  
//  
  
#include <string.h>  
#include <stdio.h>  
  
int main( void )  
{  
   char* string = "Able was I ere I saw Elba";  
   int result;  
  
   // Reverse string and compare (ignore case):  
   result = _stricmp( string, _strrev( _strdup( string ) ) );  
   if( result == 0 )  
      printf( "The string \"%s\" is a palindrome\n", string );  
   else  
      printf( "The string \"%s\" is not a palindrome\n", string );  
}  

The string "Able was I ere I saw Elba" is a palindrome  

Non applicable. Pour appeler la fonction C standard, utilisez PInvoke. Pour plus d'informations, consultez Exemples d'appel de plateforme.

Manipulation de chaînes
Paramètres régionaux
Interprétation des séquences de caractères multioctets
strcpy, wcscpy, _mbscpy
_strset, _strset_l, _wcsset, _wcsset_l, _mbsset, _mbsset_l

Afficher: