_strrev, _wcsrev, _mbsrev, _mbsrev_l
Inverte i caratteri di una stringa.
Importante |
---|
_mbsrev e _mbsrev_l non possono essere utilizzati nelle applicazioni eseguite in Windows Runtime.Per ulteriori informazioni, vedere Funzioni CRT non supportate 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
);
Parametri
str
Stringa con terminazione null da invertire.locale
Impostazioni locali da utilizzare.
Valore restituito
Restituisce un puntatore alla stringa modificata.Nessun valore restituito è riservato per indicare un errore.
Note
La funzione di _strrev inverte l'ordine dei caratteri in string.Il carattere di terminazione null rimane sul posto._wcsrev e _mbsrev sono versioni a caratteri di tipo "wide" e di caratteri multibyte di _strrev.Gli argomenti e il valore restituito di _wcsrev sono stringhe di caratteri di tipo "wide", quelli di _mbsrev sono stringhe di caratteri multibyte.Per _mbsrev, l'ordine di byte in ogni carattere multibyte in string non viene modificato.Altrimenti queste tre funzioni si comportano in modo identico.
_mbsrev convalida i suoi parametri.Se string1 o string2 è un puntatore null, il gestore non valido di parametro viene richiamato, come descritto in Convalida dei parametri.Se l'esecuzione è consentita per continuare, _mbsrev restituisce NULL e imposta errno a EINVAL._strrev e _wcsrev non convalidano i relativi parametri.
Il valore di output è interessato dall'impostazione dell'impostazione di categoria di LC_CTYPE delle impostazioni locali; vedere setlocale, _wsetlocale per ulteriori informazioni.Le versioni di queste funzioni sono identiche, eccetto quelli che non dispongano dell'utilizzo di _l le impostazioni locali correnti e quelle che eseguono il suffisso di_l utilizzare invece il parametro delle impostazioni locali passato.Per ulteriori informazioni, vedere Impostazioni locali.
Nota sulla sicurezza |
---|
Queste funzioni potrebbero essere vulnerabile a rischi di sovraccarico del buffer.I sovraccarichi del buffer possono essere utilizzati per gli attacchi di sistema perché possono causare un'elevazione dei privilegi ingiustificata.Per ulteriori informazioni, vedere Evitare sovraccarichi del buffer. |
Mapping di routine a Testo generico
TCHAR.H routine |
_UNICODE & _MBCS non definiti |
_MBCS definito |
_UNICODE definito |
---|---|---|---|
_tcsrev |
_strrev |
_mbsrev |
_wcsrev |
n/d |
n/d |
_mbsrev_l |
n/d |
Requisiti
Routine |
Intestazione obbligatoria |
---|---|
_strrev |
<string.h> |
_wcsrev |
<string.h> o <wchar.h> |
_mbsrev, _mbsrev_l |
<mbstring.h> |
Per informazioni aggiuntive di compatibilità, vedere Compatibilità.
Esempio
// 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 .NET Framework
Non applicabile. Per chiamare la funzione standard C, utilizzare PInvoke. Per ulteriori informazioni, vedere Esempi di platform invoke.