Condividi tramite


_strncoll, _wcsncoll, _mbsncoll, _strncoll_l, _wcsncoll_l, _mbsncoll_l

Confronto di stringhe utilizzando informazioni specifiche delle impostazioni locali.

Importante

_mbsncoll e _mbsncoll_l non possono essere utilizzate nelle applicazioni eseguite in Windows Runtime.Per ulteriori informazioni, vedere Funzioni CRT non supportate con /ZW.

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
    Numero di caratteri da confrontare.

  • locale
    Impostazioni locali da utilizzare.

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 di stringa1 e stringa2

< 0

string1 è minore di string2.

0

string1 è identico a string2.

> 0

string1 è maggiore di string2.

Ognuna di queste funzioni restituisce _NLSCMPERROR. Per utilizzare _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 a EINVAL. Per verificare un errore in una chiamata a _wcsncoll, impostare errno a 0 e quindi verificare errno dopo aver chiamato _wcsncoll.

Note

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 nella tabella codici tra l'ordine del set di caratteri e l'ordine dei caratteri lessicografici, e quando questa differenza è particolarmente interessante per il confronto fra stringhe. L'ordine del set di caratteri è dipendente dalle impostazioni locali. Le versioni di queste funzioni che non prevedono l'utilizzo del suffisso _l utilizzano le impostazioni locali correnti, ma le versioni che hanno il suffisso _l utilizzano le impostazioni locali che vengono passate. Per ulteriori informazioni, vedere Impostazioni locali.

Tutte queste funzioni convalidano i relativi parametri. Se string1 o string2 è un puntatore null, o se count è maggiore di INT_MAX, viene invocato il gestore di parametro non valido, 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 & _MBCS non definiti

_MBCS definito

_UNICODE definito

_tcsnccoll

_strncoll

_mbsncoll

_wcsncoll

_tcsncoll

_strncoll

_mbsnbcoll

_wcsncoll

Requisiti

Routine

Intestazione obbligatoria

_strncoll, _strncoll_l

<string.h>

_wcsncoll, _wcsncoll_l

<wchar.h> o <string.h>

_mbsncoll, _mbsncoll_l

<mbstring.h>

Per ulteriori informazioni sulla compatibilità, vedere Compatibilità.

Equivalente .NET Framework

System::String::Compare

Vedere anche

Riferimenti

Impostazioni locali

Modifica di stringhe (CRT)

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