Работа с функцией 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
Bitmap: главные принципы, форматы и преимущества
HTML и SVG: основы, анимации и интерактивные элементы
Тег br в HTML: синтаксис и примеры
Скачать Pygame
Internal Exception IO Netty Handler Codec DecoderException
Двумерные массивы в Python
Child Last: Важность последнего ребенка в семье
Dict Get - ваш надежный помощник в поиске словарных определений
Провинция State: история, география и достопримечательности