strstr 함수의 사용과 원리
Apple , Apple cider 라는 두 문자열이 있다고 가정하자. 이 단어 중에 중복되는 단어는 Apple 이다.
C언어에서 함수로 "Apple" 이라는 단어가 중복되는지 찾고 싶을 때 사용하는 함수가 바로 strstr 이다.
string.h 헤더 파일에 선언되어 있다.
strstr 함수의 원형은 다음과 같다:
char *strstr(const char *haystack, const char *needle);
haystack: 검색 대상이 되는 문자열
needle: haystack에서 찾고자 하는 부분 문자열
strstr 함수는 haystack 문자열을 처음부터 끝까지 순차적으로 탐색하며, 각 위치에서 needle 문자열의 시작 부분과 일치하는지 검사한다. 일치하는 위치를 찾으면 그 위치의 포인터를 반환한다. 일치하는 부분이 없으면 탐색을 계속한다.
예시 코드
#include <stdio.h>
#include <stdbool.h>
#include <stdlib.h>
#include <string.h>
int solution(const char* str1, const char* str2) {
return strstr(str1, str2)?1:2;
}
int main(void){
const char* str1 = "ab6CDE443fgh22iJKlmn1o";
const char* str2 = "6CD";
int result = solution(str1, str2);
printf("%d", result);
return 0;
}
'C 언어 함수' 카테고리의 다른 글
동적 할당 시 값 초기화 memset 함수 (1) | 2024.04.27 |
---|---|
sqrt 함수 (1) | 2024.04.22 |
삼항 연산자 사용하기 (1) | 2024.04.21 |
C 언어에서 정수를 문자열로 변환하기: sprintf와 %d 형식 지정자 활용법 (0) | 2024.04.21 |
C 언어에서 bool 함수 사용하기 (0) | 2024.04.14 |