#include <string.h>
int strncmp(const char *str1, const char *str2, size_t count);
Функция strncmp() сравнивает в лексикографическом порядке не более count символов из двух строк, заканчивающихся символом конца строки, и возвращает целое значение, зависящее от результата сравнения следующим образом:
Значение | Результат сравнения |
---|---|
Меньше нуля | str1 меньше str2 |
Нуль | str1 равен str2 |
Больше нуля | str1 больше str2 |
Если в какой-нибудь из заданных строк меньше count символов, сравнение заканчивается при обнаружении первого нулевого символа.
Пример
Следующая функция сравнивает первые восемь символов двух своих аргументов, взятых из командной строки, и выдает сообщение в случае их равенства.
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
if(argc!=3) {
printf("Неверное количество аргументов.");
exit(1);
}
if(!strncmp(argv[1], argv[2], 8))
printf("Строки одинаковые.\n");
return 0;
}
Зависимые функции
strcmp() strnchr() strncpy()