C ++ 'daki memcmp () işlevi, iki işaretçi nesnesinin belirtilen sayıda karakterini karşılaştırır
memcmp () prototipi
int memcmp (const void * lhs, const void * rhs, size_t sayısı);
memcmp()
Lhs, rhs ve sayım: işlev üç argüman alır. Bu işlev önce lhs ve rhs ile gösterilen nesneleri dizileri olarak yorumlar unsigned char
. Daha sonra lhs ve rhs'nin ilk sayı karakterlerini sözlükbilimsel olarak karşılaştırır.
Başlık dosyasında "> başlık dosyasında tanımlanır.
memcmp () Parametreler
lhs and rhs
: Karşılaştırılacak bellek nesnelerinin işaretçisi.count
: Karşılaştırılacak maksimum bayt sayısı.
memcmp () Dönüş değeri
Memcmp () işlevi a:
- içindeki ilk farklı bayt
lhs
, karşılık gelen bayttan büyükse pozitif değerrhs
. - içindeki ilk farklı bayt
lhs
, karşılık gelen bayttan küçükse negatif değerrhs
. - İlk bayt sayısı
lhs
verhs
eşitse 0.
Örnek: memcmp () işlevi nasıl çalışır?
#include #include using namespace std; void display(char *lhs, char *rhs, int result, int count) ( if(result> 0) cout << rhs << " precedes " << lhs << endl; else if (result < 0) cout << lhs << " precedes " << rhs << endl; else cout << "First " << count << " characters of " << lhs << " and " << rhs << " are same" << endl; ) int main() ( char lhs() = "Hello World!"; char rhs() = "Hello Earth!"; int result; result = memcmp(lhs, rhs, 5); display(lhs, rhs, result, 5); result = memcmp(lhs, rhs, 7); display(lhs, rhs, result, 7); return 0; )
Programı çalıştırdığınızda, çıktı:
Merhaba Dünya'nın ilk 5 karakteri! ve Merhaba Dünya! aynı Merhaba Dünya! Merhaba Dünya!