Функция strcmp () в C ++ сравнивает две строки с нулевым завершением. Сравнение проводится лексикографически.
strcmp () прототип
int strcmp (const char * lhs, const char * rhs);
strcmp()
Функция принимает два аргумента: левые и правые части. Он лексикографически сравнивает содержание lhs и rhs. Знак результата - это знак различия между первыми парами символов, которые различаются влево и вправо.
Поведение strcmp()
не определено, если любой из lhs или rhs не указывает на строки с завершающим нулем.
Он определен в заголовочном файле "> заголовочный файл.
Параметры strcmp ()
lhs and rhs
: Указатель на строки с завершающим нулем для сравнения.
strcmp () Возвращаемое значение
Функция strcmp () возвращает:
- положительное значение, если первый различающийся символ в левой части больше, чем соответствующий знак в правой части.
- отрицательное значение, если первый отличающийся символ в левой части меньше соответствующего символа в правой части.
- 0, если hs и rhs равны.
Пример: как работает функция strcmp ()
#include #include using namespace std; void display(char *lhs, char *rhs, int result) ( if(result> 0) cout << rhs << " precedes " << lhs << endl; else if (result < 0) cout << lhs << " precedes " << rhs << endl; else cout << lhs << " and " << rhs << " are same" << endl; ) int main() ( char lhs() = "Armstrong"; char rhs() = "Army"; int result; result = strcmp(lhs,rhs); display(lhs,rhs,result); result = strcmp(lhs,lhs); display(lhs,lhs,result); return 0; )
Когда вы запустите программу, вывод будет:
Армстронг предшествует армии Армстронга, а Армстронг - то же