std:: wmemcmp
|
Definido en el encabezado
<cwchar>
|
||
|
int
wmemcmp
(
const
wchar_t
*
lhs,
const
wchar_t
*
rhs,
std::
size_t
count
)
;
|
||
Compara los primeros count caracteres anchos de los arreglos de caracteres anchos apuntados por lhs y rhs . La comparación se realiza lexicográficamente.
El signo del resultado es el signo de la diferencia entre los valores del primer par de caracteres anchos que difieren en los arreglos que se están comparando.
Si count es cero, la función no hace nada.
Contenidos |
Parámetros
| lhs, rhs | - | punteros a los arreglos de caracteres anchos a comparar |
| count | - | número de caracteres anchos a examinar |
Valor de retorno
Valor negativo si el valor del primer carácter ancho diferente en lhs es menor que el valor del carácter ancho correspondiente en rhs : lhs precede a rhs en orden lexicográfico.
0 si todos los caracteres anchos de lhs y rhs son iguales.
Valor positivo si el valor del primer carácter ancho diferente en lhs es mayor que el valor del carácter ancho correspondiente en rhs : rhs precede a lhs en orden lexicográfico.
Notas
Esta función no es sensible a la configuración regional y no presta atención a los valores de los wchar_t objetos que examina: los nulos así como los caracteres anchos no válidos también se comparan.
Ejemplo
#include <clocale> #include <cwchar> #include <iostream> #include <locale> #include <string> void demo(const wchar_t* lhs, const wchar_t* rhs, std::size_t sz) { std::wcout << std::wstring(lhs, sz); int rc = std::wmemcmp(lhs, rhs, sz); if (rc == 0) std::wcout << " compares equal to "; else if (rc < 0) std::wcout << " precedes "; else if (rc > 0) std::wcout << " follows "; std::wcout << std::wstring(rhs, sz) << " in lexicographical order\n"; } int main() { std::setlocale(LC_ALL, "en_US.utf8"); std::wcout.imbue(std::locale("en_US.utf8")); wchar_t a1[] = {L'α',L'β',L'γ'}; constexpr std::size_t sz = sizeof a1 / sizeof *a1; wchar_t a2[sz] = {L'α',L'β',L'δ'}; demo(a1, a2, sz); demo(a2, a1, sz); demo(a1, a1, sz); }
Salida posible:
αβγ precedes αβδ in lexicographical order αβδ follows αβγ in lexicographical order αβγ compares equal to αβγ in lexicographical order
Véase también
|
compara dos cadenas anchas
(función) |
|
|
compara dos búferes
(función) |
|
|
compara una cantidad determinada de caracteres de dos cadenas anchas
(función) |
|
|
Documentación C
para
wmemcmp
|
|