Se, että merkkijono ei ole C-kielen perustietotyyppi näkyy siinä, että merkkijonoille ei voi tehdä yhtäsuuruusvertailuja ==-operaattorilla eikä merkkijonoa voi sijoittaa toisen arvoksi =-operaattorilla.
Merkkijonojen vertailu on tehtävä string.h-tiedostossa määritellyllä kirjastofunktiolla strcmp().
Funktion prototyyppi on seuraava:
int strcmp (const char *eka, const char *toka);
Funktiolle välitetään parametreina kaksi merkkijonotaulukkoa.
const-määreet (constant = vakio) muuttujamäärittelyjen edessä ilmaisevat, ettei funktiolla ole lupa muuttaa parametreja. (Muuttujaparametrejahan voitaisiin periaatteessa muuttaa.)
Funktion paluuarvona on luku, joka
< 0 mikäli eka < toka | |
= 0 mikäli merkkijonot ovat samoja | |
> 0 mikäli eka > toka. | |
Esimerkki |