C strcmp () - C Štandardná knižnica

Funkcia strcmp () porovnáva dva reťazce a vráti 0, ak sú obidva reťazce identické.

C strcmp () prototyp

 int strcmp (const char * str1, const char * str2);

strcmp()Funkcia trvá dva reťazce a vráti celé číslo.

strcmp()Porovnáva dva reťazce znak po znaku.

Ak je prvý znak dvoch reťazcov rovnaký, porovnáva sa ďalší znak dvoch reťazcov. Takto to pokračuje, kým sa zodpovedajúce znaky dvoch reťazcov nelíšia alebo kým ''sa nedosiahne nulový znak .

Je definované v string.hhlavičkovom súbore.

Návratová hodnota z strcmp ()

Návratová hodnota Poznámky
0 ak sú obidva reťazce identické (rovnaké)
negatívny ak je hodnota ASCII prvého nezhodného znaku menšia ako druhá.
kladné celé číslo ak je hodnota ASCII prvého nepriradeného znaku väčšia ako druhá.

Príklad: C strcmp () funkcia

 #include #include int main() ( char str1() = "abcd", str2() = "abCd", str3() = "abcd"; int result; // comparing strings str1 and str2 result = strcmp(str1, str2); printf("strcmp(str1, str2) = %d", result); // comparing strings str1 and str3 result = strcmp(str1, str3); printf("strcmp(str1, str3) = %d", result); return 0; ) 

Výkon

 strcmp (str1, str2) = 32 strcmp (str1, str3) = 0

Prvý nepriradený znak medzi reťazcami str1 a str2 je tretí znak. Hodnota ASCII pre „c“ je 99 a ASCII pre „C“ je 67. Preto pri porovnaní reťazcov str1 a str2 je návratová hodnota 32.

Pri porovnaní reťazcov str1 a str3 je výsledok 0, pretože obidva reťazce sú identické.

Zaujímavé články...