패턴매칭과 색인 값 질문
텃골돌샘터
질문 제목 :
이 소스에 보시면 서브스트링 값이 없으면 색인값 (index)가 -1이 나와서
-1을 노매치라고 프린트 하게 짜놨습니다
그말은 즉, 맨앞 JINJU의 J는 색인값이 0이 된다는 말인데요
제가 배울떄는 서브스트링이 없으면 즉 색인값이 없으면 0이고 시작
부분 맨첨 글자 색인값이 1부터 시작이라고 배웠는데
소스를어떻게 바꿔야 하나요?4시간 가까이 쥐어짜봐도 안되서 올려봐요 ㅠㅠ
질문 내용 :
#include stdio.h
#include string.h
// #include iostream
// using namespace std;
int my_comp ( char *S1, char *S2 )
{
int L1 = strlen ( S1 );
int L2 = strlen ( S2 );
if ( L1= L2 )
for ( int N = 0; N L1 - L2; N++ )
if ( !strncmp ( S1+N, S2, L2 ) ) return N;
return -1;
}
int main()
{
int re = my_comp ( JINJU NATIONAL, NATION );
if ( re == -1 ) printf ( 노매치!\n );else printf ( Index : %d\n, re );
// if ( re == -1 ) cout 노매치! endl;else cout Index : re endl;
return 0;
}