Funkcija strcmp () u C ++ uspoređuje dva null završna niza. Usporedba se vrši leksikografski.
prototip strcmp ()
int strcmp (const char * lhs, const char * rhs);
strcmp()
Funkcija traje dva argumenta: LHS i RHS. Leksikografski uspoređuje sadržaj lhs i rhs. Znak rezultata znak je razlike između prvih parova znakova koji se razlikuju u lhs i rhs.
Ponašanje of strcmp()
je nedefinirano ako bilo koji od lhs ili rhs ne upućuje na ničelno završene nizove.
Definirano je u datoteci zaglavlja "> datoteka zaglavlja.
strcmp () Parametri
lhs and rhs
: Pokazivač na nizove koji su završeni za usporedbu.
strcmp () Povratna vrijednost
Funkcija strcmp () vraća:
- pozitivna vrijednost ako je prvi znak koji se razlikuje u lhs veći od odgovarajućeg znaka u rhs.
- negativna vrijednost ako je prvi znak koji se razlikuje u lhs manji od odgovarajućeg znaka u rhs.
- 0 ako su hs i rhs jednaki.
Primjer: Kako funkcionira funkcija strcmp ()
#include #include using namespace std; void display(char *lhs, char *rhs, int result) ( if(result> 0) cout << rhs << " precedes " << lhs << endl; else if (result < 0) cout << lhs << " precedes " << rhs << endl; else cout << lhs << " and " << rhs << " are same" << endl; ) int main() ( char lhs() = "Armstrong"; char rhs() = "Army"; int result; result = strcmp(lhs,rhs); display(lhs,rhs,result); result = strcmp(lhs,lhs); display(lhs,lhs,result); return 0; )
Kada pokrenete program, izlaz će biti:
Armstrong prethodi vojsci Armstrong i Armstrong su isti