C ++ 'daki wmemcmp () işlevi, iki geniş dizenin belirtilen sayıda geniş karakterini karşılaştırır.
Wmemcmp () işlevi başlık dosyasında tanımlanmıştır.
wmemcmp () prototipi
int wmemcmp (const wchar_t * lhs, const wchar_t * rhs, size_t sayım);
Wmemcmp () işlevi üç bağımsız değişken alır: lhs, rhs ve count. Bu işlev, lhs ve rhs'nin ilk count geniş karakterlerini sözlükbilimsel olarak karşılaştırır.
wmemcmp () Parametreler
- lhs ve rhs: Karşılaştırılacak geniş karakter dizisinin işaretçisi.
- sayı: Karşılaştırılacak maksimum geniş karakter sayısı.
wmemcmp () Dönüş değeri
Wmemcmp () işlevi a:
- lhs'deki ilk farklı geniş karakter rhs'deki karşılık gelen bayttan büyükse pozitif değer.
- lhs'deki ilk farklı geniş karakter rhs'deki karşılık gelen bayttan daha az ise negatif değer.
- 0, lhs ve rhs'nin ilk sayım geniş karakterleri eşitse
Örnek: wmemcmp () işlevi nasıl çalışır?
#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; )
Programı çalıştırdığınızda, çıktı:
ΆΦΪάψωϮ ve ΆΦΪάπχϻ'nin ilk 4 karakteri aynıdır ΆΦΪάπχϻ öncelidir ΆΦΪάψωϮ