Работа с функцией strstr в языке C

Функция strstr() в языке программирования C предназначена для поиска первого вхождения подстроки в строку. Синтаксис этой функции выглядит следующим образом:

<pre><code class="language-c">
char* strstr(const char* str1, const char* str2);
</code></pre>

Она принимает два параметра: str1 - указатель на строку, в которой осуществляется поиск, и str2 - указатель на подстроку, которую нужно найти. Функция возвращает указатель на начало найденной подстроки в исходной строке или NULL, если подстроку не удалось найти.

Для лучшего понимания работы функции strstr(), рассмотрим несколько примеров кода.

Пример 1:

<pre><code class="language-c">
#include <stdio.h>
#include <string.h>

int main() {
   const char* str1 = "Hello, world!";
   const char* str2 = "world";

   char* result = strstr(str1, str2);

   if (result != NULL) {
      printf("Найдено: %s\n", result);
   } else {
      printf("Подстрока не найдена\n");
   }

   return 0;
}
</code></pre>

В данном примере мы ищем подстроку "world" в строке "Hello, world!". Функция strstr() вернет указатель на первое вхождение этой подстроки в исходную строку. В данном случае будет выведено сообщение "Найдено: world".

Пример 2:

<pre><code class="language-c">
#include <stdio.h>
#include <string.h>

int main() {
   const char* str1 = "Hello, world!";
   const char* str2 = "abc";

   char* result = strstr(str1, str2);

   if (result != NULL) {
      printf("Найдено: %s\n", result);
   } else {
      printf("Подстрока не найдена\n");
   }

   return 0;
}
</code></pre>

В этом примере мы ищем подстроку "abc" в строке "Hello, world!". Поскольку такая подстрока отсутствует, функция strstr() вернет значение NULL. Результат выполнения программы будет следующим: "Подстрока не найдена".

Пример 3:

<pre><code class="language-c">
#include <stdio.h>
#include <string.h>

int main() {
   const char* str1 = "Hello, world!";
   const char* str2 = "o";

   char* result = strstr(str1, str2);

   while (result != NULL) {
      printf("Найдено: %s\n", result);
      result = strstr(result + 1, str2);
   }

   return 0;
}
</code></pre>

В данном примере мы ищем все вхождения подстроки "o" в строке "Hello, world!". Функция strstr() будет вызываться в цикле до тех пор, пока не найдет все подстроки. На каждой итерации внутри цикла выводится найденная подстрока. Результат выполнения программы будет следующим:

Найдено: o, world!
Найдено: o

Это были примеры использования функции strstr() в языке программирования C. Она является полезным инструментом для работы со строками и позволяет выполнять различные операции, связанные с поиском и манипуляциями с подстроками.

Похожие вопросы на: "strstr c "

Ошибка сети: настройка и исправление проблемы
Разработка на Python с помощью Sublime Text
GUI Python: создание графического интерфейса с помощью языка Python
SVG в EPS: онлайн-конвертер
MD5 хэш: применение и особенности
Алгопрог: изучение и применение алгоритмического программирования
Шрифт Comic Sans MS: история, особенности, применение
Path Java: полное руководство для изучения и освоения
SELECT INTO: копирование данных в новую таблицу в SQL
Паттерны проектирования Python