_strncoll, _wcsncoll, _mbsncoll, _strncoll_l, _wcsncoll_l, _mbsncoll_l

Le stringhe vengono confrontate usando informazioni specifiche delle impostazioni locali.

Importante

_mbsncoll e _mbsncoll_l non possono essere usati nelle applicazioni eseguite in Windows Runtime. Per altre informazioni, vedere Funzioni CRT non supportate nelle app della piattaforma UWP (Universal Windows Platform).

Sintassi

int _strncoll(
   const char *string1,
   const char *string2,
   size_t count
);
int _wcsncoll(
   const wchar_t *string1,
   const wchar_t *string2,
   size_t count
);
int _mbsncoll(
   const unsigned char *string1,
   const unsigned char *string2,
   size_t count
);
int _strncoll_l(
   const char *string1,
   const char *string2,
   size_t count,
   _locale_t locale
);
int _wcsncoll_l(
   const wchar_t *string1,
   const wchar_t *string2,
   size_t count,
   _locale_t locale
);
int _mbsncoll_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
Il numero di caratteri da confrontare.

locale
Impostazioni locali da usare.

Valore restituito

Ognuna di queste funzioni restituisce un valore che indica la relazione fra le sottostringhe di string1 e string2, come segue.

Valore restituito Relazione tra string1 a string2
< 0 string1 è minore di string2.
0 string1 è identica a string2.
> 0 string1 è maggiore di string2.

Ognuna di queste funzioni restituisce _NLSCMPERROR. Per usare _NLSCMPERROR, includere STRING.h o MBSTRING.h. _wcsncoll può non riuscire se string1 o string2 contiene codici a caratteri wide che sono al di fuori del dominio della sequenza di ordinamento. Quando si verifica un errore, _wcsncoll può impostare errno su EINVAL. Per verificare la presenza di un errore in una chiamata a _wcsncoll, impostare su errno 0 e quindi controllare errno dopo la _wcsncoll chiamata.

Osservazioni:

Ognuna di queste funzioni esegue un confronto senza distinzione tra maiuscole e minuscole dei primi caratteri count in string1 e string2 in base alla tabella codici correntemente in uso. Usare queste funzioni solo quando esiste una differenza tra l'ordine del set di caratteri e l'ordine lessicografico dei caratteri nella tabella codici e quando questa differenza è importante per il confronto tra stringhe. L'ordine del set di caratteri è dipendente dalle impostazioni locali. Le versioni di queste funzioni che non hanno il suffisso _l usano le impostazioni locali correnti, ma le versioni che hanno il suffisso _l usano le impostazioni locali che vengono passate. Per altre informazioni, vedere Locale.

Tutte queste funzioni convalidano i relativi parametri. string1 Se o string2 è un puntatore Null o count è maggiore di INT_MAX, 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.

Per impostazione predefinita, lo stato globale di questa funzione è limitato all'applicazione. Per modificare questo comportamento, vedere Stato globale in CRT.

Mapping di routine di testo generico

Routine TCHAR.H _UNICODE e _MBCS non definito _MBCS Definito _UNICODE Definito
_tcsnccoll _strncoll _mbsncoll _wcsncoll
_tcsncoll _strncoll _mbsnbcoll _wcsncoll

Requisiti

Ciclo Intestazione obbligatoria
_strncoll, _strncoll_l <string.h>
_wcsncoll, _wcsncoll_l <wchar.h> o <string.h>
_mbsncoll, _mbsncoll_l <mbstring.h>

Per altre informazioni sulla compatibilità, vedere Compatibility (Compatibilità).

Vedi anche

impostazioni locali
Manipolazione delle stringhe
Funzioni strcoll
localeconv
_mbsnbcoll, _mbsnbcoll_l, _mbsnbicoll, _mbsnbicoll_l
setlocale, _wsetlocale
strcmp, wcscmp, _mbscmp
_stricmp, _wcsicmp, _mbsicmp, _stricmp_l, _wcsicmp_l, _mbsicmp_l
strncmp, wcsncmp, _mbsncmp, _mbsncmp_l
_strnicmp, _wcsnicmp, _mbsnicmp, _strnicmp_l, _wcsnicmp_l, _mbsnicmp_l
strxfrm, wcsxfrm, _strxfrm_l, _wcsxfrm_l