C ++ memcmp () - C ++ standardowa biblioteka

Funkcja memcmp () w C ++ porównuje określoną liczbę znaków dwóch obiektów wskaźnika

memcmp () prototyp

 int memcmp (const void * lhs, const void * rhs, size_t count);

memcmp()Funkcja przyjmuje trzy argumenty: lewa RHS i policzyć. Ta funkcja najpierw interpretuje obiekty wskazywane przez lhs i rhs jako tablice unsigned char. Następnie porównuje leksykograficznie znaki pierwszego zliczania z lewej i prawej strony.

Jest zdefiniowany w pliku nagłówkowym "> plik nagłówkowy.

memcmp () Parametry

  • lhs and rhs: Wskaźnik do obiektów pamięci do porównania.
  • count: Maksymalna liczba bajtów do porównania.

memcmp () Wartość zwracana

Funkcja memcmp () zwraca:

  • wartość dodatnia, jeśli pierwszy różniący się bajt lhsjest większy niż odpowiadający mu bajt rhs.
  • wartość ujemna, jeśli pierwszy różniący się bajt lhsjest mniejszy niż odpowiadający mu bajt rhs.
  • 0, jeśli pierwsze zliczane bajty lhsi rhssą równe.

Przykład: Jak działa funkcja memcmp ()

 #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; )

Po uruchomieniu programu wynik będzie następujący:

Pierwsze 5 znaków Hello World! i Hello Earth! są takie same Hello Earth! poprzedza Hello World!

Interesujące artykuły...