반응형
strrchr
헤더 파일
[언어 자료구조 알고리즘/C11 표준 라이브러리 함수] - string.h
const char * strrchr ( const char * str, int ch ); 문자열에 특정 문자가 있는 위치를 뒤에서부터 찾는 함수입력 매개 변수 리스트
str 문자열
ch 찾을 문자
반환 값
str 문자열의 뒷 부분에서 처음으로 ch 문자가 있는 위치, 없을 때 NULL
사용 예
//C언어 표준 라이브러리 함수 사용법 가이드
//const char * strrchr ( const char * str, int ch ); 문자열에 특정 문자가 있는 위치를 뒤에서부터 찾는 함수
//문자열에서 특정 문자가 있는 위치를 뒤에서부터 찾아 출력
#include <string.h>
#include <stdio.h>
const char *ehstrrchr(const char *str, int ch)
{
int i;
int len = strlen(str);//문자열 길이 계산
for (i = len - 1; i >= 0; i--)//문자열의 뒤쪽에서 앞쪽으로 이동하면서 반복
{
if (str[i] == ch)//같은 문자를 찾았을 때(i>=0)
{
break;//반복문 탈출
}
}
if (i>=0)//찾았을 때
{
return str+i;//찾은 위치 반환
}
return NULL;
}
int main (void)
{
char str[100] = "12345abcde54321";
const char *cp;
//strrchr 함수 이용
printf("%s 뒤에서부터 %c을(를) 처음 발견한 위치\n",str,'5');
cp = strrchr(str,'5');
if(cp)
{
printf("%d번째 %s\n", cp - str + 1, cp);
}
else
{
printf("없음\n");
}
//ehstrrchr 함수 이용
printf("%s 뒤에서부터 %c을(를) 처음 발견한 위치\n", str, '3');
cp = ehstrrchr(str, '3');
if (cp)
{
printf("%d번째 %s\n", cp - str + 1,cp);
}
else
{
printf("없음\n");
}
return 0;
}
출력
12345abcde54321 뒤에서부터 5(을)를 처음 발견한 위치
11번째 54321
12345abcde54321 뒤에서부터 3(을)를 처음 발견한 위치
13번째 321
반응형
'언어 자료구조 알고리즘 > C11 표준 라이브러리 함수' 카테고리의 다른 글
memcpy 함수 [C언어 표준 라이브러리 함수 가이드] (0) | 2016.01.03 |
---|---|
strerr 함수 [C언어 표준 라이브러리 함수 가이드] (0) | 2016.01.03 |
strtok_s 함수 [C언어 표준 라이브러리 함수 가이드] (0) | 2016.01.03 |
strtok 함수 [C언어 표준 라이브러리 함수 가이드] (0) | 2016.01.03 |
strstr 함수 [C언어 표준 라이브러리 함수 가이드] (0) | 2016.01.03 |
strchr 함수 [C언어 표준 라이브러리 함수 가이드] (0) | 2016.01.03 |
strncat_s 함수 [C언어 표준 라이브러리 함수 가이드] (0) | 2016.01.03 |
strncat 함수 [C언어 표준 라이브러리 함수 가이드] (0) | 2016.01.03 |
strcat_s [C언어 표준 라이브러리 함수 가이드] (0) | 2016.01.03 |
strcat 함수 [C언어 표준 라이브러리 함수 가이드] (0) | 2016.01.03 |