k5054
strcmp()
должно сработать просто отлично в этом случае. если это не так то name
и что *p
укажите на являются различный. Помнить это strcmp()
не возвращает true, если случай отличается (например, "Hello" не равно "hello"), и он не возвращает true для подстрок (например, "Hello" не равно "Hello world")
Что произойдет, если вы это сделаете
printf("name = \"%s\"\n", name);
printf("*p = \"%s\"\n", p);
printf("strcmp(name, p) = %d\n", strcmp(name, p));
если name и *p равны, то вы должны получить значение 0 для strcmp. Если они не равны, это должно появиться в printfs. Возможно, у вас есть конечные пробелы или конечная буква "\n", если вы получаете ввод из файла или клавиатуры.