ホームページ >バックエンド開発 >C++ >C/C++ の strstr() 関数

C/C++ の strstr() 関数

WBOY
WBOY転載
2023-09-16 22:37:021732ブラウズ

C/C++ の strstr() 関数

strstr() 関数は、「string.h」ヘッダー ファイルで事前定義されている関数で、文字列処理を実行するために使用されます。この関数は、メイン文字列 (例: str1) 内で最初に出現する部分文字列 (例: str2) を検索するために使用されます。

文法

strstr() の構文は次のとおりです。

char *strstr( char *str1, char *str2);

strstr() のパラメータは

str2 です。が必要です。 メイン文字列で検索される部分文字列 str1

strstr() の戻り値は

です。 検索している部分文字列が次の場所で見つかった場合メイン文字列の場合、関数はサブ文字列のアドレス ポインタを返しますが、それ以外の場合、サブ文字列がメイン文字列にない場合は、null ポインタを返します。

- 照合プロセスにはヌル文字 (「\0」) は含まれませんが、ヌル文字が検出されると停止します。

Example

Input: str1[] = {“Hello World”}
str2[] = {“or”}
Output: orld
Input: str1[] = {“tutorials point”}
str2[] = {“ls”}
Output: ls point

Example

ライブ デモンストレーション

#include <string.h>
#include <stdio.h>
int main() {
   char str1[] = "Tutorials";
   char str2[] = "tor";
   char* ptr;
   // Will find first occurrence of str2 in str1
   ptr = strstr(str1, str2);
   if (ptr) {
      printf("String is found\n");
      printf("The occurrence of string &#39;%s&#39; in &#39;%s&#39; is &#39;%s&#39;", str2, str1, ptr);
   }
   else
      printf("String not found\n");
   return 0;
}

出力

上記のコードを実行すると、次の出力が生成されます。 -

String is found
The occurrence of string &#39;tor&#39; in &#39;Tutorials&#39; is &#39;torials

ここで、strstr()の別のアプリケーションを試してみましょう

この関数を使用して、文字列の特定の部分を置換することもできます。たとえば、最初の部分文字列 str2 を見つけた後、文字列 str1 を置換したいと考えています。

Example

Input: str1[] = {&ldquo;Hello India&rdquo;}
str2[] = {&ldquo;India&rdquo;}
str3[] = {&ldquo;World&rdquo;}
Output: Hello World

説明 - str2がstr1で見つかると、str3

Example

実数に置き換えられます。 time Demo

#include <string.h>
#include <stdio.h>
int main() {
   // Take any two strings
   char str1[] = "Tutorialshub";
   char str2[] = "hub";
   char str3[] = "point";
   char* ptr;
   // Find first occurrence of st2 in str1
   ptr = strstr(str1, str2);
   // Prints the result
   if (ptr) {
      strcpy(ptr, str3);
      printf("%s\n", str1);
   } else
      printf("String not found\n");
      return 0;
}

Output

上記のコードを実行すると、次の出力が生成されます-

Tutorialspoint

以上がC/C++ の strstr() 関数の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はtutorialspoint.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。