_strrev, _wcsrev, _mbsrev, _mbsrev_l
Odwraca znaków ciągu.
Ważne |
---|
_mbsrevi _mbsrev_l nie można używać w aplikacji, których wykonywanie w Środowisko wykonawcze systemu Windows.Aby uzyskać więcej informacji, zobacz CRT funkcje nie obsługiwane przez /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
);
Parametry
str
Ciąg zakończony znakiem null, aby odwrócić.locale
Ustawienia regionalne używane.
Wartość zwracana
Zwraca wskaźnik do zmienionych ciągu.Nie zwraca żadnej wartości jest zarezerwowany wystąpił błąd.
Uwagi
_strrev Funkcja Odwraca kolejność znaków w string.Kończącego znaku null pozostaje na miejscu._wcsrevi _mbsrev szerokich znaków i znaków wielobajtowych wersje _strrev.Argumenty i wartości zwracanej przez _wcsrev są ciągami szerokich znaków; tych z _mbsrev są ciągami znaków wielobajtowych.Dla _mbsrev, kolejność bajtów w każdym znaków wielobajtowych w string nie ulega zmianie.Zmienia tych trzech funkcji zachowanie takich samych nazwach.
_mbsrevsprawdza poprawność jego parametry.Jeśli każda string1 lub string2 jest pusty wskaźnik, program obsługi nieprawidłowy parametr jest wywoływana, zgodnie z opisem w Sprawdzanie poprawności parametru.Jeśli wykonanie może kontynuować, _mbsrev zwraca NULL i ustawia errno do EINVAL._strrevi _wcsrev nie są zgodne z nimi parametrów.
Wartość produkcji jest zależny od ustawienia z LC_CTYPE kategorii ustawienie regionalne tzn. zobacz setLocale, _wsetlocale Aby uzyskać więcej informacji.Wersje te funkcje są identyczne, z tym, że te nie mają _l sufiks Użyj bieżących ustawień regionalnych i tych, które mają_l sufiks zamiast tego użyć parametru ustawień regionalnych, który jest przekazywana.Aby uzyskać więcej informacji, zobacz Ustawienia regionalne.
Uwaga dotycząca zabezpieczeń |
---|
Tych funkcji może być narażony na zagrożenia przepełnienie buforu.Przekroczenia buforu może służyć do systemu ataków, ponieważ mogą one powodować nieuzasadnione podniesienie uprawnień.Aby uzyskać więcej informacji, zobacz Unikanie przekroczeniem buforu. |
Tekst rodzajowy rutynowych mapowania
TCHAR.Rozpoczęto wykonywanie procedury h |
_UNICODE & _MBCS nie zdefiniowany |
_MBCS, definicja |
_UNICODE, definicja |
---|---|---|---|
_tcsrev |
_strrev |
_mbsrev |
_wcsrev |
n/d |
n/d |
_mbsrev_l |
n/d |
Wymagania
Rozpoczęto wykonywanie procedury |
Wymaganego nagłówka |
---|---|
_strrev |
<string.h> |
_wcsrev |
<string.h> lub <wchar.h> |
_mbsrev, _mbsrev_l |
<mbstring.h> |
Aby uzyskać dodatkowe informacje o zgodności, zobacz Zgodność.
Przykład
// 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 );
}
Odpowiednik w programie .NET Framework
Nie dotyczy. Aby wywoływać funkcji C standardowej, należy użyć PInvoke. Aby uzyskać więcej informacji, zobacz Platforma wywołać przykłady.