Функцията wcscmp () в C ++ сравнява два нулеви завършващи широки низа. Сравнението се извършва лексикографски.
Функцията wcscmp () е дефинирана в заглавния файл.
прототип на wcscmp ()
int wcscmp (const wchar_t * lhs, const wchar_t * rhs);
Функцията wcscmp () взема два аргумента: lhs и rhs. Той сравнява съдържанието на lhs и rhs лексикографски. Знакът на резултата е знакът на разликата между първите двойки знаци, които се различават в lhs и rhs.
Поведението на wcscmp () е неопределено, ако някой от lhs или rhs не сочи към нулирани крайни широки низове.
wcscmp () Параметри
- lhs: Указател към нулевия прекратен широк низ за сравнение.
- rhs: Показалец към широкия низ, завършен с нула, за сравнение.
wcscmp () Върната стойност
Функцията wcscmp () връща:
- положителна стойност, ако първият различаващ се знак в lhs е по-голям от съответния знак в rhs.
- отрицателна стойност, ако първият различаващ се знак в lhs е по-малък от съответния знак в rhs.
- 0, ако lhs и rhs са равни.
Пример: Как работи функцията 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; )
Когато стартирате програмата, изходът ще бъде:
ǷǷple предхожда Ăpple ƤƤple предхожда Ƿpple