wmemcmp() — Compare Wide-Character Buffers
Format
#include <wchar.h>
int wmemcmp(const wchar_t *s1, const wchar_t *s2, size_t n);
Language Level
ANSI
Threadsafe
Yes
Wide Character Function
See Wide Characters for more information.
Description
The wmemcmp()
function
compares the first n wide characters of the object pointed
to by s1 to the first n wide characters of the object
pointed to by s2. If n has the value 0, the wmemcmp()
function
returns 0.
Return Value
The wmemcmp()
function
returns a value according to the relationship between the two strings, s1 and s2:
Value | Meaning |
---|---|
Less than 0 | s1 less than s2 |
0 | s1 identical to s2 |
Greater than 0 | s1 greater than s2 |
Example
This example compares the wide-character
string in to out using the
wmemcmp()
function. #include <wchar.h>
#include <stdio.h>
#include <locale.h>
main()
{
int rc;
wchar_t *in = L"12345678";
wchar_t *out = L"12AAAAAB";
setlocale(LC_ALL, "POSIX");
printf("\nGREATER is the expected result");
rc = wmemcmp(in, out, 3);
if (rc == 0)
printf("\nArrays are EQUAL %ls %ls \n", in, out);
else
{
if (rc > 0)
printf("\nArray %ls GREATER than %ls \n", in, out);
else
printf("\nArray %ls LESS than %ls \n", in, out);
}
}
/******************************************************
The output should be:
GREATER is the expected result
Array 12345678 GREATER than 12AAAAAB
******************************************************/
Related Information
- memcmp() — Compare Buffers
- strcmp() — Compare Strings
- wcscmp() — Compare Wide-Character Strings
- wcsncmp() — Compare Wide-Character Strings
- wmemchr() — Locate Wide Character in Wide-Character Buffer
- wmemcpy() — Copy Wide-Character Buffer
- wmemmove() — Copy Wide-Character Buffer
- wmemset() — Set Wide Character Buffer to a Value
- <wchar.h>