이것은 두 개의 문자열을 받아서 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");