Сравнение массивов типа char в языке C осуществляется с помощью функции strcmp(). Функция strcmp() сравнивает две строки и возвращает результат сравнения в виде целого числа:
- Если результат равен нулю (0), это означает, что строки полностью идентичны.
- Если результат меньше нуля (< 0), это означает, что первая строка меньше второй в лексикографическом порядке.
- Если результат больше нуля (> 0), это означает, что первая строка больше второй в лексикографическом порядке.
Для использования функции strcmp() необходимо подключить заголовочный файл string.h. Синтаксис функции такой:
int strcmp(const char *s1, const char *s2)
Где s1 и s2 - указатели на сравниваемые строки.
Пример использования функции strcmp():
#include <stdio.h> #include <string.h> int main() { char str1[] = "Hello"; char str2[] = "World"; int result = strcmp(str1, str2); if (result == 0) { printf("Строки идентичныn"); } else if (result < 0) { printf("Первая строка меньше второйn"); } else { printf("Первая строка больше второйn"); } return 0; }
В этом примере строки "Hello" и "World" сравниваются с помощью функции strcmp(). В результате сравнения на экран будет выведено сообщение "Первая строка меньше второй".
Нужно отметить, что strcmp() сравнивает строки до первого символа, который различается, а не до конца строк. Если требуется сравнивать строки полностью, то следует использовать функцию strncmp() с указанием максимальной длины для сравнения.