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

Funkce strncmp () v C ++ porovnává zadaný počet znaků dvou null zakončovacích řetězců. Porovnání se provádí lexikograficky.

prototyp strncmp ()

 int strncmp (const char * lhs, const char * rhs, size_t count);

strncmp()Funkce má dva argumenty: LHS, RHS a počítat. Porovnává obsah lhs a rhs lexikograficky až do maximálního počtu znaků. Znamení výsledku je znamením rozdílu mezi prvními páry znaků, které se liší v lhs a rhs.

Chování strncmp()je nedefinováno, pokud lhs nebo rhs neukazují na řetězce zakončené hodnotou null.

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

strncmp () parametry

  • lhs and rhs: Ukazatel na řetězce zakončené nulou k porovnání.
  • count: Maximální počet znaků k porovnání.

strncmp () Návratová hodnota

strncmp()Funkce vrací:

  • kladná hodnota, pokud je první odlišný znak v lhs větší než odpovídající znak v rhs.
  • záporná hodnota, pokud je první odlišný znak v lhs menší než odpovídající znak v rhs.
  • 0, pokud jsou první počitatelné znaky lhs a rhs stejné.

Příklad: Jak funguje funkce strncmp ()

 #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() = "Armstrong"; char rhs() = "Army"; int result; result = strncmp(lhs,rhs,3); display(lhs,rhs,result,3); result = strncmp(lhs,rhs,4); display(lhs,rhs,result,4); return 0; )

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

 První 3 postavy Armstronga a Army jsou stejné Armstrong předchází Army

Zajímavé články...