C ++ memcmp () - standardní knihovna C ++

Funkce memcmp () v C ++ porovnává zadaný počet znaků dvou objektů ukazatele

prototyp memcmp ()

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

memcmp()Funkce trvá tři argumenty: LHS, RHS a počítat. Tato funkce nejprve interpretuje objekty, na které ukazují lhs a rhs, jako pole unsigned char. Poté lexikograficky porovná první počet znaků lhs a rhs.

Je definován v hlavičkovém souboru.

parametry memcmp ()

  • lhs and rhs: Ukazatel na paměťové objekty k porovnání.
  • count: Maximální počet bajtů k porovnání.

memcmp () Vrátí hodnotu

Funkce memcmp () vrací a:

  • kladná hodnota, pokud je první odlišný bajt lhsvětší než odpovídající bajt v rhs.
  • záporná hodnota, pokud je první odlišný bajt lhsmenší než odpovídající bajt v rhs.
  • 0, pokud je první počet bajtů roven lhsa rhsroven.

Příklad: Jak funguje funkce 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; )

Když spustíte program, výstup bude:

Prvních 5 postav Hello World! a Ahoj Zemi! jsou stejné Hello Earth! předchází Hello World!

Zajímavé články...