Я использую функцию strstr() для поиска строки, заданной пользователем в некоторой другой строке.Почему этот fgets() ведет себя странным образом?
Проблема в том, что когда я использую функцию fgets() для ввода ввода, функция strstr() задает нуль (false), даже если введенная пользователем строка.
Для примера:
char search[20]; //MAX size of search term is 20 bytes
puts("Enter search term: ");
fgets(search,20,stdin); //suppose user enters: photographer (12 characters long)
if(strstr("I'm no photographer but I can picture us together",search))
puts("Found!");
else
puts("No luck!");
Вывод: Не повезло!
Даже жесткий «фотограф» есть в строке
Однако, если я использую зсап(), чтобы принять поиск входа.
scanf("%19s",search); //like this
Выходной: Найдено!
Почему это происходит?
отладчик будет легко показан дополнительный вопрос обугленного. Downvote. –
Я учусь, мне еще предстоит узнать, что такое gdb. скоро я это сделаю. – saintmarkode