-
C언어 strchr()Visual Studio/C 기초 2013. 6. 25. 16:44
strchr() 함수가 문자를 발견하면 문자에 대한 포인터를 돌려줍니다.
예제를 보면서 설명을 하겠습니다.
#include <stdio.h>
#include <string.h>main(){
char *location, buf[80];
int ch;printf("검색할 원본 문자열을 입력하세요 : ");
gets(buf);printf("찾을 문자 하나를 입력하세요 : ");
ch = getchar();location = strchr(buf, ch);
if(location==NULL)
printf("문자 %c를 찾는 데 실패했습니다.\n",ch);
else
printf("문자 %c를 %d번째 위치에서 찾았습니다.\n",ch,location-buf);
}여기서 strchr() 함수는 문자 ch가 발견되거나 NULL 문자가 발견될 때 까지 buf 문장을 왼쪽에서 오른쪽으로 진행하며 검색합니다.
함수는 ch를 찾으면 ch에 대한 포인터를 돌려주고 그렇지 않을 경우 NULL을 돌려줍니다.
location-buf가 무엇이냐 궁금해 하실텐데 문자열에서 찾고자 하는 문자를 찾기 위해 함수가 돌려주는 값에서 문자열 포인터를 빼기 위해 location에서 buf 포인터 값을 뺀 것입니다.
'Visual Studio > C 기초' 카테고리의 다른 글
C언어 문자열 비교 strspn() (0) 2013.07.03 C언어 문자 검색 strcspn() (1) 2013.07.03 strncmp() (0) 2013.06.19 C언어 문자열 비교 [strcmp()] (2) 2013.06.17 strncat() (0) 2013.06.17