C++에서 strstr()
함수를 이용하여 문자열에 특정 문자열이 포함되어있는지 확인할 수 있습니다. 또한 찾으려고 하는 문자열 위치에 대한 포인터 객체를 리턴 받을 수 있습니다.
1. Syntax
인자로 두개의 문자열을 전달하며, 문자열 s1에서 문자열 s2가 있는지 찾고 그 포인터를 리턴합니다. s2가 존재하지 않으면 null을 리턴합니다.
char* strstr(const char *s1, const char *s2);
문자열의 마지막
\0
는 비교 대상에 포함되지 않습니다.
2. Example 1
예를 들어, s1과 s2가 다음과 같다면 strstr()
은 s1의 문자 W
에 대한 포인터를 리턴합니다.
- s1 = "Hello, World!"
- s2 = "World";
#include <iostream>
using namespace std;
int main()
{
char s1[] = "Hello, World!";
char s2[] = "World";
char* ptr = strstr(s1, s2);
if (ptr)
cout << "target is present: " << ptr;
else
cout << "target is not present";
}
Output:
target is present: World!
3. Example 2
다른 예로, s1과 s2가 다음과 같다면 strstr()
은 null을 리턴합니다.
- s1 = "Hello, World!"
- s2 = "AAA";
#include <iostream>
using namespace std;
int main()
{
char s1[] = "Hello, World!";
char s2[] = "AAA";
char* ptr = strstr(s1, s2);
if (ptr)
cout << "target is present: " << ptr;
else
cout << "target is not present";
}
Output:
target is not present
4. Example 3
s2가 ""
라면 s1의 첫번째 문자의 포인터를 리턴합니다. 즉 H
의 포인터를 리턴합니다.
int main()
{
char s1[] = "Hello, World!";
char s2[] = "";
char* ptr = strstr(s1, s2);
if (ptr)
cout << "target is present: " << ptr;
else
cout << "target is not present";
}
Output:
target is present: Hello, World!
References
Loading script...
Related Posts
- [C++] 배열을 리스트(list)로 변환
- [C++] 배열에서 특정 요소 제거
- [C++] vector 모든 요소의 합계 계산
- [C++] 두개의 배열이 같은지 비교
- [C++] 배열에 특정 요소가 있는지 확인
- [C++] 2차 배열 복사 방법
- [C++] 배열 복사하는 방법 (copy, memcpy)
- [C++] 함수의 인자로 배열 전달
- [C++] vector 모든 값의 평균 계산
- [C++] vector를 문자열로 변환
- [C++] 배열에서 요소의 Index 찾기
- [C++] 배열의 중복 요소 찾기
- [C++] 배열의 중복 요소 제거
- [C++] 배열 순서 거꾸로 뒤집기
- [C++] char 배열을 string으로 변환
- [C++] string을 char 배열로 변환
- [C++] 문자열 거꾸로 뒤집기
- [C++] vector의 중복 요소 제거
- [C++] 두 배열을 하나의 배열로 합치기
- [C++] 배열 길이, 크기 얻는 방법
- [C++] 배열에서 최대값, 최소값 찾기 (3가지 방법)
- [C++] int를 string으로 변환, 3가지 방법
- [C++] 문자열 리스트(Vector, 배열) 정렬
- [C++] string의 문자 정렬
- [C++] string을 int로 변환, 3가지 방법
- [C++] string 대문자/소문자 변환 방법
- [C++] string.compare() 문자열 비교
- [C++] int를 char로 변환, 3가지 방법
- [C++] 문자열 자르기, 3가지 방법
- [C++] isdigit(), 어떤 문자가 숫자인지 확인
- [C++] strlen(), 문자열 길이 계산
- [C++] strcmp(), strncmp() 함수로 문자열 비교
- [C++] strstr(), 특정 문자열 찾기