Namespaces
Variants

wcscmp

From cppreference.net
< c ‎ | string ‎ | wide
Definido en el encabezado <wchar.h>
int wcscmp ( const wchar_t * lhs, const wchar_t * rhs ) ;
(desde C95)

Compara dos cadenas anchas terminadas en nulo lexicográficamente.

El signo del resultado es el signo de la diferencia entre los valores del primer par de caracteres anchos que difieren en las cadenas que se están comparando.

El comportamiento es indefinido si lhs o rhs no son punteros a cadenas anchas terminadas en nulo.

Contenidos

Parámetros

lhs, rhs - punteros a las cadenas anchas terminadas en nulo a comparar

Valor de retorno

Valor negativo si lhs aparece antes que rhs en orden lexicográfico.

Cero si lhs y rhs son iguales.

Valor positivo si lhs aparece después de rhs en orden lexicográfico.

Notas

Esta función no es sensible a la configuración regional, a diferencia de wcscoll , y el orden puede no ser significativo cuando se utilizan caracteres de diferentes bloques Unicode juntos o cuando el orden de las unidades de código no coincide con ningún orden de intercalación.

Ejemplo

#include <locale.h>
#include <stdio.h>
#include <wchar.h>
void demo(const wchar_t* lhs, const wchar_t* rhs)
{
    int rc = wcscmp(lhs, rhs);
    const char *rel = rc < 0 ? "precedes" : rc > 0 ? "follows" : "equals";
    setlocale(LC_ALL, "en_US.utf8");
    printf("[%ls] %s [%ls]\n", lhs, rel, rhs);
}
int main(void)
{
    const wchar_t* string = L"どうもありがとうございます";
    demo(string, L"どうも");
    demo(string, L"助かった");
    demo(string + 9, L"ありがとうございます" + 6);
}

Salida posible:

[どうもありがとうございます] follows [どうも]
[どうもありがとうございます] precedes [助かった]
[ざいます] equals [ざいます]

Referencias

  • Estándar C23 (ISO/IEC 9899:2024):
  • 7.29.4.4.1 La función wcscmp (p: TBD)
  • Estándar C17 (ISO/IEC 9899:2018):
  • 7.29.4.4.1 La función wcscmp (p: TBD)
  • Estándar C11 (ISO/IEC 9899:2011):
  • 7.29.4.4.1 La función wcscmp (p: 433)
  • Estándar C99 (ISO/IEC 9899:1999):
  • 7.24.4.4.1 La función wcscmp (p: 379)

Véase también

(C95)
compara una cantidad determinada de caracteres de dos cadenas anchas
(función)
(C95)
compara una cantidad determinada de caracteres anchos de dos arreglos
(función)
compara dos cadenas
(función)
(C95)
compara dos cadenas anchas de acuerdo con la configuración regional actual
(función)