Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

C++의 strpbrk()

<시간/>

이것은 두 개의 문자열을 받아서 string1에서 string2의 첫 번째 문자를 찾는 C++의 문자열 함수입니다. 존재하는 경우 string1의 문자에 대한 포인터를 반환하고, 그렇지 않으면 NULL을 반환합니다. NULL 문자 종료에는 적용되지 않습니다.

strpbrk()의 구문은 다음과 같습니다 -

char *strpbrk(const char *str1, const char *str2)

위의 구문에서 strpbrk()는 str2의 모든 문자와 일치하는 str1의 첫 번째 문자에 대한 포인터를 반환합니다.

strpbrk()를 보여주는 프로그램은 다음과 같습니다.

예시

#include <iostream>
#include <cstring>
using namespace std;
int main() {
   char str1[20] = "aeroplane";
   char str2[20] = "fun";
   char *c;
   c = strpbrk(str1, str2);
   if (c != 0)
   cout<<"First matching character in str1 is "<< *c <<" at position "<< c-str1+1;
   else
   printf("Character not found");
   return 0;
}

출력

First matching character in str1 is n at position 8

위의 프로그램에서 먼저 두 개의 문자열 str1과 str2가 정의됩니다. strpbrk()에 의해 반환된 str1의 문자에 대한 포인터는 c에 저장됩니다. c 값이 0이 아니면 str1에서 문자와 해당 위치가 표시됩니다. 그렇지 않으면 문자가 str1에 없습니다. 다음 코드 스니펫에서 이를 확인할 수 있습니다.

char str1[20] = "aeroplane";
char str2[20] = "fun";
char *c;
c = strpbrk(str1, str2);
if (c != 0)
cout<<"First matching character in str1 is "<<*c <<" at position "<< c-str1+1;
else
printf("Character not found");