Funktionen wmemcmp () i C ++ sammenligner et specificeret antal brede tegn med to brede strenge.
Funktionen wmemcmp () er defineret i headerfilen.
wmemcmp () prototype
int wmemcmp (const wchar_t * lhs, const wchar_t * rhs, size_t count);
Funktionen wmemcmp () tager tre argumenter: lhs, rhs og count. Denne funktion sammenligner de første tæller brede tegn i lhs og rhs leksikografisk.
wmemcmp () Parametre
- lhs og rhs: Markør til det brede tegnarray, der skal sammenlignes.
- optælling: Maksimalt antal brede tegn, der skal sammenlignes.
wmemcmp () Returværdi
Funktionen wmemcmp () returnerer en:
- positiv værdi, hvis den første forskellige brede karakter i lhs er større end den tilsvarende byte i rhs.
- negativ værdi, hvis den første forskellige brede karakter i lhs er mindre end den tilsvarende byte i rhs.
- 0, hvis det første antal brede tegn i lhs og rhs er ens
Eksempel: Hvordan fungerer wmemcmp () -funktionen?
#include #include #include using namespace std; void compare(wchar_t *lhs, wchar_t *rhs, int count) ( int result = wmemcmp(lhs, rhs, count); if(result> 0) wcout << rhs << L" precedes " << lhs << endl; else if (result < 0) wcout << lhs << L" precedes " << rhs << endl; else wcout << L"First " << count << L" characters of " << lhs << L" and " << rhs << L" are same" << endl; ) int main() ( setlocale(LC_ALL, "en_US.utf8"); wchar_t lhs() = L"u0386u03a6u03aau03acu03c8u03c9u03ee"; wchar_t rhs() = L"u0386u03a6u03aau03acu03c0u03c7u03fb"; compare(lhs, rhs, 4); compare(lhs, rhs, 7); return 0; )
Når du kører programmet, vil output være:
De første 4 tegn i ΆΦΪάψωϮ og ΆΦΪάπχϻ er ens ΆΦΪάπχϻ går foran ΆΦΪάψωϮ