strcoll, wcscoll, _mbscoll

Compare strings using locale-specific information.

int strcoll( const char *string1, const char *string2 );

int wcscoll( const wchar_t *string1, const wchar_t *string2 );

int _mbscoll( const unsigned char *string1, const unsigned char *string2 );

Routine Required Header Compatibility
strcoll <string.h> ANSI, Win 95, Win NT
wcscoll <wchar.h>, <string.h> ANSI, Win 95, Win NT
_mbscoll <mbstring.h> Win 95, Win NT

For additional compatibility information, see Compatibility in the Introduction.

Libraries

LIBC.LIB Single thread static library, retail version
LIBCMT.LIB Multithread static library, retail version
MSVCRT.LIB Import library for MSVCRT.DLL, retail version

Return Value

Each of these functions returns a value indicating the relationship of string1 to string2, as follows.

Return Value Relationship of string1 to string2
< 0 string1 less than string2
0 string1 identical to string2
> 0 string1 greater than string2

Each of these functions returns _NLSCMPERROR on an error. To use _NLSCMPERROR, include either STRING.H or MBSTRING.H. wcscoll can fail if either string1 or string2 contains wide-character codes outside the domain of the collating sequence. When an error occurs, wcscoll may set errno to EINVAL. To check for an error on a call to wcscoll, set errno to 0 and then check errno after calling wcscoll.

Parameters

string1, string2

Null-terminated strings to compare

Remarks

Each of these functions performs a case-sensitive comparison of string1 and string2 according to the code page currently in use. These functions should be used only when there is a difference between the character set order and the lexicographic character order in the current code page and this difference is of interest for the string comparison.

Generic-Text Routine Mappings

TCHAR.H Routine _UNICODE & _MBCS Not Defined _MBCS Defined _UNICODE Defined
_tcscoll strcoll _mbscoll wcscoll

Locale Routines, String Manipulation Routinesstrcoll Functions Overview

See Also   localeconv, _mbsnbcoll, setlocale, strcmp, _stricmp, strncmp, _strnicmp, strxfrm