Share via


_strrev, _wcsrev, _mbsrev, _mbsrev_l

Invierte los caracteres de una cadena.

Nota importanteImportante

_mbsrev y _mbsrev_l no se pueden utilizar en las aplicaciones que se ejecutan en Windows en tiempo de ejecución.Para obtener más información, vea Funciones CRT no compatibles con /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 
);

Parámetros

  • str
    Cadena terminada en null invertir.

  • locale
    Configuración regional a utilizar.

Valor devuelto

Devuelve un puntero a la cadena modificada.No se reserva ningún valor devuelto para indicar un error.

Comentarios

La función de _strrev invierte el orden de los caracteres de string.Permanece el carácter null de terminación en contexto._wcsrev y _mbsrev son versiones de caracteres anchos y de multibyte- carácter de _strrev.Los argumentos y el valor devuelto de _wcsrev son cadenas de caracteres; las de _mbsrev son cadenas de multibyte- carácter.Para _mbsrev, el orden de bytes en cada carácter multibyte en string no cambia.Estas tres funciones se comportan exactamente igual de otra manera.

_mbsrev valida sus parámetros.Si string1 o string2 es un puntero NULL, se invoca el controlador no válido de parámetro, tal y como se describe en Validación de parámetros.Si la ejecución puede continuar, _mbsrev devuelve NULL y establece errno a EINVAL._strrev y _wcsrev no validan sus parámetros.

El valor de salida se ve afectado por el valor de la categoría de LC_CTYPE de configuración regional; vea setlocale, _wsetlocale para obtener más información.Las versiones de estas funciones son idénticas, excepto en que las que no tienen el uso del sufijo de _l la configuración regional actual y las que tienen el sufijo de _l en su lugar utilice el parámetro de configuración regional que se pasa.Para obtener más información, vea Configuración regional.

Nota de seguridadNota sobre la seguridad

Estas funciones pueden ser vulnerables a amenazas de saturación del búfer.Las saturaciones del búfer se pueden utilizar para ataques del sistema porque pueden producir una elevación de privilegios injustificable.Para obtener más información, vea Para evitar las saturaciones del búfer.

Asignaciones de la rutina de Genérico- texto

Rutina de TCHAR.H

_UNICODE y _MBCS no definidos

_MBCS definido

_UNICODE definido

_tcsrev

_strrev

_mbsrev

_wcsrev

no disponible

no disponible

_mbsrev_l

no disponible

Requisitos

Rutina

Encabezado necesario

_strrev

<string.h>

_wcsrev

<string.h> o <wchar.h>

_mbsrev, _mbsrev_l

<mbstring.h>

Para obtener información adicional de compatibilidad, vea Compatibilidad.

Ejemplo

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

Equivalente en .NET Framework

No es aplicable Para llamar a la función estándar de C, utilice PInvoke. Para obtener más información, vea Ejemplos de invocación de plataforma.

Vea también

Referencia

Manipulación de cadenas (CRT)

Configuración regional

Interpretación de secuencias de Multibyte- Carácter

strcpy, wcscpy, _mbscpy

_strset, _strset_l, _wcsset, _wcsset_l, _mbsset, _mbsset_l