Функция strcmp в языке программирования C используется для сравнения двух строк. Возвращает она целочисленное значение, которое зависит от результата сравнения.
Синтаксис функции strcmp следующий:
```
int strcmp(const char* str1, const char* str2);
```
Функция принимает два аргумента типа `const char*`, которые представляют собой указатели на строки, которые нужно сравнить.
Результат работы функции будет 0, если обе строки идентичны. Вернется отрицательное число, если первая строка (str1) лексикографически меньше второй (str2). Вернется положительное число, если первая строка больше.
Давайте рассмотрим примеры, чтобы лучше понять, как работает функция strcmp.
Пример 1:
```c
<pre><code>
#include <stdio.h>
#include <string.h>
int main() {
char str1[] = "Hello";
char str2[] = "Hello";
int result = strcmp(str1, str2);
if(result == 0) {
printf("Строки равны.\n");
} else if(result < 0) {
printf("Первая строка меньше второй.\n");
} else {
printf("Первая строка больше второй.\n");
}
return 0;
}
</code></pre>
```
Результат выполнения программы будет: "Строки равны." В данном случае, обе строки "Hello" идентичны, поэтому результат сравнения равен 0.
Пример 2:
```c
<pre><code>
#include <stdio.h>
#include <string.h>
int main() {
char str1[] = "Hello";
char str2[] = "Hell";
int result = strcmp(str1, str2);
if(result == 0) {
printf("Строки равны.\n");
} else if(result < 0) {
printf("Первая строка меньше второй.\n");
} else {
printf("Первая строка больше второй.\n");
}
return 0;
}
</code></pre>
```
В данном примере, первая строка "Hello" больше второй "Hell", поэтому результат сравнения будет положительное число. Результат выполнения программы: "Первая строка больше второй."
Пример 3:
```c
<pre><code>
#include <stdio.h>
#include <string.h>
int main() {
char str1[] = "World";
char str2[] = "Zebra";
int result = strcmp(str1, str2);
if(result == 0) {
printf("Строки равны.\n");
} else if(result < 0) {
printf("Первая строка меньше второй.\n");
} else {
printf("Первая строка больше второй.\n");
}
return 0;
}
</code></pre>
```
В данном случае, вторая строка "Zebra" больше первой "World", поэтому результат сравнения будет отрицательное число. Результат выполнения программы: "Первая строка меньше второй."
Это лишь небольшой обзор функции strcmp и ее использования в языке C. Она очень полезна, когда нужно сравнить две строки и определить их отношение друг к другу по алфавиту.