Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
Export (0) Print
Expand All
div
eof
Expand Minimize

_mbsnbicmp, _mbsnbicmp_l

Compares n bytes of two multibyte-character strings, ignoring case.

int _mbsnbicmp(
   const unsigned char *string1,
   const unsigned char *string2,
   size_t count 
);

string1, string2

Null-terminated strings to compare.

count

Number of bytes to compare.

The return value indicates the relationship between the substrings.

Return value

Description

< 0

string1 substring less than string2 substring.

0

string1 substring identical to string2 substring.

> 0

string1 substring greater than string2 substring.

On an error, _mbsnbcmp returns _NLSCMPERROR, which is defined in String.h and Mbstring.h.

The _mbsnbicmp function lexicographically compares, at most, the first count bytes of string1 and string2. The comparison is performed without regard to case; _mbsnbcmp is a case-sensitive version of _mbsnbicmp. The comparison ends if a terminating null character is reached in either string before count characters are compared. If the strings are equal when a terminating null character is reached in either string before count characters are compared, the shorter string is lesser.

_mbsnbicmp is similar to _mbsnicmp, except that it compares strings by bytes instead of by characters.

Two strings containing characters located between 'Z' and 'a' in the ASCII table ('[', '\', ']', '^', '_', and '`') compare differently, depending on their case. For example, the two strings "ABCDE" and "ABCD^" compare one way if the comparison is lowercase ("abcde" > "abcd^") and the other way ("ABCDE" < "ABCD^") if it is uppercase.

_mbsnbicmp recognizes multibyte-character sequences according to the multibyte code page currently in use. It is not affected by the current locale setting.

If either string1 or string2 is a null pointer, _mbsnbicmp invokes the invalid parameter handler as described in Parameter Validation. If execution is allowed to continue, the function returns _NLSCMPERROR and sets errno to EINVAL.

Generic-Text Routine Mappings

Tchar.h routine

_UNICODE and _MBCS not defined

_MBCS defined

_UNICODE defined

_tcsnicmp

_strnicmp

_mbsnbicmp

_wcsnicmp

_tcsnicmp_l

_strnicmp_l

_mbsnbicmp_l

_wcsnicmp_l

Routine

Required header

_mbsnbicmp

<mbstring.h>

For more compatibility information, see Compatibility in the Introduction.

See the example for _mbsnbcmp, _mbsnbcmp_l.

Not applicable. To call the standard C function, use PInvoke. For more information, see Platform Invoke Examples.

Community Additions

ADD
Show:
© 2015 Microsoft