Сравняване на низ

Сравняването на низове става според лексикографската им наредба. Осъществява се чрез функцията strcmp.
а) Синтаксис:

strcmp(<низ1>,<низ2>);


Функцията има два параметъра – произволни последователности от знаци
б) Семантика:

Функцията сравнява двата низа. Тя връща като резултат цяло число, което е отрицателно, ако първия низ е преди втория в лексикографската подредба, нула – ако двата низа са еднакви и положително число, ако първия низ е след втория в лексикографската подредба.


Реализацията на функцията би могла да изглежда по следния начин:

int strcmp(const char *s1, const char *s2 )
{
    int i;
    for(i=0;s1[i]!='\0';i++)
    if(s1[i]!=s2[i]) return s1[i]-s2[i];
    return 0;
}

Ето няколко примера:

strcmp(“text1”,”text2”) //връща отрицателно число
strcmp(“text”,”text”) //връща нула
strcmp (“text2”,”text1”) //връща положително число