Partager via


_strrev, _wcsrev, _mbsrev, _mbsrev_l

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

Important

_mbsrev et _mbsrev_l ne peuvent pas être utilisés 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 le caractère NULL à annuler.

  • locale
    Paramètres régionaux à utiliser.

Valeur de retour

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

Notes

La fonction d' _strrev inverse l'ordre des caractères dans string.Le caractère NULL de fin reste en place._wcsrev et _mbsrev sont à caractères larges et des versions à caractères multioctets d' _strrev.Les arguments et la valeur de retour d' _wcsrev sont des chaînes à caractères larges ; ces d' _mbsrev sont des chaînes de caractères multioctets.Pour _mbsrev, la commande d'octets dans chaque caractère multioctet dans string n'est pas modifiée.Ces trois fonctions se comportent de sinon.

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

La valeur de sortie est affectée par la configuration de la définition de catégorie d' LC_CTYPE des paramètres régionaux ; consultez setlocale, _wsetlocale pour plus d'informations.Les versions de ces fonctions sont identiques, mais que celles qui n'ont pas l'utilisation de suffixe d' _l les paramètres régionaux et ceux qui font utiliser le suffixe d'_l à la place le paramètre de paramètres régionaux qui est passé.Pour plus d'informations, consultez Paramètres régionaux.

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

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 de système car ils peuvent provoquer une élévation de privilège injustifiée.Pour plus d'informations, consultez l' Solutions contre les dépassements de mémoire tampon.

Mappages de routines de texte générique

Routine de TCHAR.H

_UNICODE et non définis _MBCS

_MBCS défini

_UNICODE défini

_tcsrev

_strrev

_mbsrev

_wcsrev

N/A

N/A

_mbsrev_l

N/A

Configuration requise

Routine

En-tête requis

_strrev

<string.h>

_wcsrev

<string.h> ou <wchar.h>

_mbsrev, _mbsrev_l

<mbstring.h>

Pour des informations de compatibilité supplémentaires, consultez Compatibilité.

Exemple

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

Équivalent .NET Framework

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

Voir aussi

Référence

Manipulation de chaînes (CRT)

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