Condividi tramite


_strnicmp, _wcsnicmp, _mbsnicmp, _strnicmp_l, _wcsnicmp_l, _mbsnicmp_l

Confronta i caratteri di due stringhe senza fare distinzione tra maiuscole e minuscole.

Importante

_mbsnicmp e _mbsnicmp_l non possono essere usati nelle applicazioni eseguite in Windows Runtime.Per altre informazioni, vedere l'argomento relativo alle funzioni CRT non supportate con /ZW.

int _strnicmp(    const char *string1,    const char *string2,    size_t count  ); int _wcsnicmp(    const wchar_t *string1,    const wchar_t *string2,    size_t count  ); int _mbsnicmp(    const unsigned char *string1,    const unsigned char *string2,    size_t count  ); int _strnicmp_l(    const char *string1,    const char *string2,    size_t count,    _locale_t locale ); int _wcsnicmp_l(    const wchar_t *string1,    const wchar_t *string2,    size_t count,    _locale_t locale ); int _mbsnicmp_l(    const unsigned char *string1,    const unsigned char *string2,    size_t count,    _locale_t locale );

Parametri

  • string1, string2
    Stringhe che terminano con Null da confrontare.

  • count
    Numero di caratteri da confrontare.

  • locale
    Impostazioni locali da usare.

Valore restituito

Indica la relazione tra le sottostringhe, come indicato di seguito.

Valore restituito

Descrizione

< 0

La sottostringa di string1 è minore della sottostringa di string2.

0

La sottostringa di string1 è identica alla sottostringa di string2.

> 0

La sottostringa di string1 è maggiore della sottostringa di string2.

In caso di errore di convalida del parametro, queste funzioni restituiscono _NLSCMPERROR, definito in <string.h> e <mbstring.h>.

Note

La funzione _strnicmp esegue un confronto ordinale al massimo dei primi count caratteri di string1 e string2. Il confronto viene eseguito senza fare distinzione tra maiuscole e minuscole convertendo ogni carattere in minuscolo. _strnicmp è una versione di strncmp che non fa distinzione tra maiuscole e minuscole. Il confronto termina se viene raggiunto un carattere di terminazione Null in entrambe le stringhe prima che vengano confrontati count caratteri. Se le stringhe sono uguali quando viene raggiunto un carattere di terminazione Null in entrambe le stringhe prima che vengano confrontati count caratteri, la stringa più corta sarà la minore.

I caratteri da 91 a 96 nella tabella ASCII ('[', '\', ']', '^', '_' e '`') sono considerati minori rispetto a qualsiasi carattere alfabetico. Questo ordinamento è identico a quello di stricmp.

_wcsnicmp e _mbsnicmp sono le versioni a caratteri wide e a caratteri multibyte di _strnicmp. Gli argomenti di _wcsnicmp sono stringhe di caratteri wide, mentre gli argomenti di _mbsnicmp sono stringhe di caratteri multibyte. _mbsnicmp riconosce le sequenze di caratteri multibyte in base alla tabella codici multibyte corrente e restituisce _NLSCMPERROR in caso di errore. Per altre informazioni, vedere Tabelle codici. A parte ciò, queste tre funzioni si comportano in modo identico. Queste funzioni vengono influenzate dalle impostazioni locali: le versioni che non hanno il suffisso _l usano le impostazioni locali correnti per il relativo comportamento dipendente dalle impostazioni locali, mentre le versioni che hanno il suffisso _l usano il parametro locale passato dall'utente. Per altre informazioni, vedere Impostazioni locali.

Tutte queste funzioni convalidano i relativi parametri. Se string1 o string2 è un puntatore Null, viene richiamato il gestore di parametri non validi, come descritto in Convalida dei parametri. Se l'esecuzione può continuare, queste funzioni restituiscono _NLSCMPERROR e impostano errno su EINVAL.

Mapping di routine di testo generico

Routine TCHAR.H

_UNICODE e _MBCS non definiti

_MBCS definito

_UNICODE definito

_tcsncicmp

_strnicmp

_mbsnicmp

_wcsnicmp

_tcsnicmp

_strnicmp

_mbsnbicmp

_wcsnicmp

_tcsncicmp_l

_strnicmp_l

_mbsnicmp_l

_wcsnicmp_l

Requisiti

Routine

Intestazione obbligatoria

_strnicmp, _strnicmp_l

<string.h>

_wcsnicmp, _wcsnicmp_l

<string.h> o <wchar.h>

_mbsnicmp, _mbsnicmp_l

<mbstring.h>

Per altre informazioni sulla compatibilità, vedere Compatibilità.

Esempio

Vedere l'esempio per strncmp.

Equivalente .NET Framework

System::String::Compare

Vedere anche

Riferimenti

Modifica di stringhe (CRT)

strcat, wcscat, _mbscat

strcmp, wcscmp, _mbscmp

strcpy, wcscpy, _mbscpy

strncat, _strncat_l, wcsncat, _wcsncat_l, _mbsncat, _mbsncat_l

strncmp, wcsncmp, _mbsncmp, _mbsncmp_l

strncpy, _strncpy_l, wcsncpy, _wcsncpy_l, _mbsncpy, _mbsncpy_l

strrchr, wcsrchr, _mbsrchr, _mbsrchr_l

_strset, _strset_l, _wcsset, _wcsset_l, _mbsset, _mbsset_l

strspn, wcsspn, _mbsspn, _mbsspn_l