strchr() 함수는 문자열에서 특정문자의 시작 포인터를 알려주는 함수
NAME
strchr, strrchr, strchrnul - locate character in string
SYNOPSIS
#include <string.h>
char *strchr(const char *s, int c);
char *strrchr(const char *s, int c);
#define _GNU_SOURCE
#include <string.h>
char *strchrnul(const char *s, int c);
의외로 유용하게 쓰일곳이 많을 것 같다.
예제 소스코드를 보면 아래와 같다.
입력하는 문자열은 august wednesday 인데
이중에서 w 문자열을 찾으면 거기의 포인터를 가져온다.
따라서 아래의 코드를 돌려보면 wednesday가 결과로 나옴.
#include#include int main() { int delim = 'w'; char *ret = NULL; const char *str = "august wednesday"; ret = strchr(str, delim); if(ret == NULL) { printf("No [%c] in string\n", (char)delim); return -1; } else printf("Found[%c]\n" "Start point==> [%s]\n", (char)delim, ret); return 0; }
이어서 원시코드를 살펴보면
아래와 같다.
출처는 : http://www.koders.com/c/fidD4BECC4286AEE76BCD9BE4C37C3FB8E2A515D529.aspx
#includechar * strchr (s, c) register const char *s; int c; { do { if (*s == c) { return (char*)s; } } while (*s++); return (0); }
반응형
'Language > C' 카테고리의 다른 글
strspn 함수 예제 (3488) | 2012.09.20 |
---|---|
strcmp 함수 예제 (3161) | 2012.08.17 |
strdup 함수 예제 (476) | 2012.08.14 |
getutxent 함수 예제 (3681) | 2012.08.13 |
strtok 함수 예제 (3377) | 2012.08.06 |