logo search
ООП для Заоч / Пинчук Лозовская Программир на С

Int strcmp(char* s1, char* s2);

Виконується лексикографічне порівняння рядків. Функція повертає значення:

-1, якщо s1 < s2 ,

0, якщо s1 == s2 ,

1, якщо s1 > s2 .

Лексикографічне відношення S1<S2 виконується, якщо рядок S1 у алфавітному порядку розташовується раніше, ніж рядок S2.

Розглянемо як приклад можливу реалізацію функції для копіювання asciiz-рядка символів. Наведена нижче функція працює точно так, як бібліотечна функція strcpy з модулю string.h.

// Приклад 1

char* scopy(char* D, char* S)

{ while (*D++ = *S++);

return D-1;

}

У наступному прикладі наведено функцію, яка визначає довжину asciiz-рядка символів (враховуючи завершальний нуль-байт). Функція працює аналогічно функції strlen з модулю string.h.

// Приклад 2