safec  3.0
Safe C Library - ISO TR24731 Bounds Checking Interface
wcscoll_s.c File Reference
#include "safe_str_lib.h"
+ Include dependency graph for wcscoll_s.c:

Functions

EXPORT errno_t wcscoll_s (const wchar_t *restrict dest, rsize_t dmax, const wchar_t *restrict src, rsize_t smax, int *indicator)
 Compares two null-terminated wide strings according to the current locale as defined by the LC_COLLATE category. More...
 

Function Documentation

◆ wcscoll_s()

EXPORT errno_t wcscoll_s ( const wchar_t *restrict  dest,
rsize_t  dmax,
const wchar_t *restrict  src,
rsize_t  smax,
int *  indicator 
)

Compares two null-terminated wide strings according to the current locale as defined by the LC_COLLATE category.

Collation order is the dictionary order: the position of the letter in the national alphabet (its equivalence class) has higher priority than its case or variant. Within an equivalence class, lowercase characters collate before their uppercase equivalents and locale-specific order may apply to the characters with diacritics. In some locales, groups of characters compare as single collation units. For example, "ch" in Czech follows "h" and precedes "i", and "dzs" in Hungarian follows "dz" and precedes "g".

Remarks
EXTENSION TO ISO/IEC JTC1 SC22 WG14 N1172, Programming languages, environments and system software interfaces, Extensions to the C Library, Part I: Bounds-checking interfaces
Parameters
[in]destwide string to compare against
[in]dmaxrestricted maximum length of dest
[in]srcwide string to be compared to dest
[in]smaxrestricted maximum length of src
[out]indicatorpointer to result indicator, greater than 0, equal to 0 or less than 0, if the string pointed to by dest is greater than, equal to or less than the string pointed to by src respectively.
Precondition
Neither dest nor src shall be a null pointer.
indicator shall not be a null pointer.
dmax/smax shall not be 0
dmax/smax shall not be greater than RSIZE_MAX_WSTR
Returns
indicator (when the return code is OK)
Return values
>0when dest greater than src
0when strings the same
<0when dest less than src
EOKwhen comparison is complete
ESNULLPwhen dest/src/indicator is NULL pointer
ESZEROLwhen dmax/smax = 0
ESLEMAXwhen dmax/smax > RSIZE_MAX_WSTR
See also
wcscmp_s(), strcoll_s(), strcasecmp_s()