Bagikan melalui


_strrev, _wcsrev, _mbsrev, _mbsrev_l

Membalikkan karakter string.

Penting

_mbsrev dan _mbsrev_l tidak dapat digunakan dalam aplikasi yang dijalankan di Windows Runtime. Untuk informasi selengkapnya, lihat Fungsi CRT yang tidak didukung di aplikasi Platform Windows Universal.

Sintaks

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

Parameter

str
String yang dihentikan null untuk dibalik.

locale
Lokal untuk digunakan.

Nilai hasil

Mengembalikan penunjuk ke string yang diubah. Tidak ada nilai pengembalian yang dicadangkan untuk menunjukkan kesalahan.

Keterangan

Fungsi membalikkan _strrev urutan karakter dalam str. Karakter null yang mengakhiri tetap ada. _wcsrev dan _mbsrev adalah versi karakter lebar dan multibyte-character dari _strrev. Argumen dan nilai yang dikembalikan adalah _wcsrev string karakter lebar. Argumen dan nilai yang dikembalikan adalah _mbsrev string multibyte-character. Untuk _mbsrev, urutan byte di setiap karakter multibyte di str tidak diubah. Ketiga fungsi ini berulah secara identik jika tidak.

_mbsrev memvalidasi parameternya. Jika atau string1string2 adalah penunjuk null, handler parameter yang tidak valid dipanggil, seperti yang dijelaskan dalam Validasi parameter. Jika eksekusi diizinkan untuk melanjutkan, _mbsrev mengembalikan NULL dan mengatur errno ke EINVAL. _strrev dan _wcsrev tidak memvalidasi parameternya.

Nilai output dipengaruhi oleh pengaturan LC_CTYPE pengaturan kategori lokal. Untuk informasi selengkapnya, lihat setlocale . Versi fungsi-fungsi ini identik, kecuali yang tidak memiliki _l akhiran menggunakan lokal saat ini dan yang memiliki _l akhiran sebagai gantinya menggunakan parameter lokal yang diteruskan. Untuk informasi selengkapnya, lihat Lokal.

Penting

Fungsi-fungsi ini mungkin rentan terhadap ancaman buffer yang diserbu. Overruns buffer dapat digunakan untuk serangan sistem karena dapat menyebabkan peningkatan hak istimewa yang tidak beralasan. Untuk informasi selengkapnya, lihat Menghindari overruns buffer.

Secara default, status global fungsi ini dicakup ke aplikasi. Untuk mengubah perilaku ini, lihat Status global di CRT.

Pemetaan rutin teks generik

TCHAR. Rutinitas H _UNICODE dan _MBCS tidak ditentukan _MBCS Didefinisikan _UNICODE Didefinisikan
_tcsrev _strrev _mbsrev _wcsrev
n/a n/a _mbsrev_l n/a

Persyaratan

Rutin Header yang diperlukan
_strrev <string.h>
_wcsrev <string.h> atau <wchar.h>
_mbsrev, _mbsrev_l <mbstring.h>

Untuk informasi kompatibilitas selengkapnya, lihat Kompatibilitas.

Contoh

// 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

Baca juga

Manipulasi string
Lokal
Interpretasi urutan karakter multibyte
strcpy, wcscpy, _mbscpy
_strset, _strset_l, _wcsset, _wcsset_l, _mbsset, _mbsset_l