C ++ strncmp () - C ++ Standardbibliotek

Funktionen strncmp () i C ++ sammenligner et specificeret antal tegn i to null-afsluttende strenge. Sammenligningen foretages leksikografisk.

strncmp () prototype

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

Den strncmp()funktion har to argumenter: LHS, ha og tæller. Den sammenligner indholdet af lhs og rhs leksikografisk op til maksimalt antal tegn. Resultatet er tegnet på forskellen mellem de første par tegn, der adskiller sig i lhs og rhs.

Opførslen af strncmp()er udefineret, hvis en af ​​lhs eller rhs ikke peger på nulterminerede strenge.

Det er defineret i header-fil "> header-fil.

strncmp () Parametre

  • lhs and rhs: Markør til nulterminerede strenge til sammenligning.
  • count: Maksimalt antal tegn, der skal sammenlignes.

strncmp () Returværdi

Den strncmp()funktion returnerer en:

  • positiv værdi, hvis den første forskellige karakter i lhs er større end den tilsvarende karakter i rhs.
  • negativ værdi, hvis den første forskellige karakter i lhs er mindre end den tilsvarende karakter i rhs.
  • 0, hvis det første antal tegn i lhs og rhs er ens.

Eksempel: Sådan fungerer strncmp () -funktionen

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

Når du kører programmet, vil output være:

 De første 3 karakterer af Armstrong og Army er de samme Armstrong går forud for hæren

Interessante artikler...