Прототип функции strncmp:
int strncmp( const char * string1, const char * string2, size_t num );
Заголовочный файл:
Название | Язык |
---|---|
string.h | С |
cstring | С++ |
Описание
Функция сравнивает первые num
символов строки string1
с первыми num
символами строки string2
.
Эта функция начинает сравнивать первый символ каждой строки. Если они равны, strncmp
продолжает сравнивать следующие пары символов, пока не будут найдены различные символы или пока не будет достигнут конец строки.
Параметры:
- string1
Первая сравниваемая строка.
- string2
Вторая сравниваемая строка.
- num
Максимальное количество сравниваемых символов.
Возвращаемое значение
Возвращает неоднозначное значение, информирующее о результате сравнения строк:
- Нулевое значение указывает на то, что содержимое обоих блоков памяти равны.
- Значение большее нуля указывает на то, что строка
string1
больше строкиstring2
, значение меньше нуля свидетельствует об обратном.
Пример: исходный код программы
//пример использования функции strncmp #include <iostream> #include <cstring> int main() { char droids[][10] = { "R2D2" , "C3PO" , "R2A6" }; // имеющиеся дроиды std::cout << "Ищете R2-дроида астромеханика...n"; for (int counter = 0 ; counter <= 2 ; counter++) // проход по дроидам if ( strncmp( droids[counter], "R2**", 2 ) == 0 ) //сравниваем первые два символа строк { std::cout << "дроид [+_+] >> " << droids[counter] << "n"; } return 0; }
Пример работы программы
CppStudio.com
Ищете R2-дроида астромеханика…
дроид [+_+] >> R2D2
дроид [+_+] >> R2A6
дроид [+_+] >> R2D2
дроид [+_+] >> R2A6