A função wcscmp () em C ++ compara duas cadeias largas de terminação nula. A comparação é feita lexicograficamente.
A função wcscmp () é definida no arquivo de cabeçalho.
protótipo wcscmp ()
int wcscmp (const wchar_t * lhs, const wchar_t * rhs);
A função wcscmp () aceita dois argumentos: lhs e rhs. Ele compara o conteúdo de lhs e rhs lexicograficamente. O sinal do resultado é o sinal de diferença entre os primeiros pares de caracteres que diferem em lhs e rhs.
O comportamento de wcscmp () é indefinido se lhs ou rhs não apontam para strings largas terminadas em null.
Parâmetros wcscmp ()
- lhs: Ponteiro para a string larga terminada em nulo para comparar.
- rhs: ponteiro para a string larga terminada em nulo para comparar.
wcscmp () Valor de retorno
A função wcscmp () retorna um:
- valor positivo se o primeiro caractere diferente em lhs for maior que o caractere correspondente em rhs.
- valor negativo se o primeiro caractere diferente em lhs for menor que o caractere correspondente em rhs.
- 0 se lhs e rhs forem iguais.
Exemplo: Como funciona a função wcscmp ()?
#include #include #include using namespace std; void compare(wchar_t *lhs, wchar_t *rhs) ( int result; result = wcscmp(lhs, rhs); if(result> 0) wcout << rhs << " precedes " << lhs << endl; else if (result < 0) wcout << lhs << " precedes " << rhs << endl; else wcout << lhs << " and " << rhs << " are same" << endl; ) int main() ( setlocale(LC_ALL, "en_US.utf8"); wchar_t str1() = L"u0102u0070ple"; wchar_t str2() = L"u00c4u01f7ple"; wchar_t str3() = L"u00c4u01a4ple"; compare(str1,str2); compare(str2,str3); return 0; )
Quando você executa o programa, a saída será:
ÄǷple precede Ñple ÄƤple precede ÄǷple