Funkcija strcmp () v jeziku C ++ primerja dva ničelna zaključna niza. Primerjava je narejena leksikografsko.
prototip strcmp ()
int strcmp (const char * lhs, const char * rhs);
strcmp()
Funkcija ima dva argumenta: na levi in desno stran. Leksikografsko primerja vsebino lhs in rhs. Znak rezultata je znak razlike med prvimi pari znakov, ki se razlikujejo v lhs in rhs.
Obnašanje strcmp()
je nedefinirano, če kateri koli od lhs ali rhs ne kaže na ničelno zaključene nize.
Določen je v datoteki glave "> datoteka glave.
parametri strcmp ()
lhs and rhs
: Kazalec na ničelno zaključene nize za primerjavo.
strcmp () Vrnjena vrednost
Funkcija strcmp () vrne:
- pozitivna vrednost, če je prvi znak, ki se razlikuje v lhs, večji od ustreznega znaka v rhs.
- negativna vrednost, če je prvi razlikovalni znak v lhs manjši od ustreznega znaka v rhs.
- 0, če sta hs in rhs enaka.
Primer: Kako deluje 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; )
Ko zaženete program, bo rezultat:
Armstrong pred vojsko Armstrong in Armstrong sta enaka