Share via


strchr, wcschr, _mbschr, _mbschr_l

현재 로캘 또는 지정한 LC_CTYPE 변환 상태 범주를 사용 하 여 문자열에서 문자를 찾습니다.

중요중요

_mbschr및 _mbschr_l Windows 런타임에서 실행 되는 응용 프로그램에서 사용할 수 없습니다.자세한 내용은 /zw에 지원 되는 CRT 함수.

char *strchr(
   const char *str,
   int c 
);  // C only
char *strchr(
   char * str,
   int c 
); // C++ only
const char *strchr(
   const char * str,
   int c 
); // C++ only
wchar_t *wcschr(
   const wchar_t *str,
   wchar_t c 
); // C only
wchar_t *wcschr(
   wchar_t *str,
   wchar_t c 
);  // C++ only
const wchar_t *wcschr(
   const wchar_t *str,
   wchar_t c 
);  // C++ only
unsigned char *_mbschr(
   const unsigned char *str,
   unsigned int c 
); // C only
unsigned char *_mbschr(
   unsigned char *str,
   unsigned int c 
); // C++ only
const unsigned char *_mbschr(
   const unsigned char *str,
   unsigned int c 
); // C++ only
unsigned char *_mbschr_l(
   const unsigned char *str,
   unsigned int c,
   _locale_t locale
); // C only 
unsigned char *_mbschr_l(
   unsigned char *str,
   unsigned int c,
   _locale_t locale
); // C++ only
const unsigned char *_mbschr_l(
   const unsigned char *str,
   unsigned int c,
   _locale_t locale
); // C++ only

매개 변수

  • str
    소스를 null로 끝나는 문자열입니다.

  • c
    찾을 문자입니다.

  • locale
    사용 하는 로캘.

반환 값

이러한 각 함수에서 첫 번째 항목으로 포인터를 반환 c 에서 str, 또는 NULL 경우 c 찾을 수 없습니다.

설명

strchr 함수 처음 발견 c 에서 str, 또는 반환 NULL 경우 c 찾을 수 없습니다.Null 종료 문자는 검색에 포함 됩니다.

wcschr_mbschr 및 _mbschr_l 와이드 및 멀티 바이트 문자 버전의 strchr.인수 및 반환 값을 wcschr 와이드 문자 문자열입니다. _mbschr 멀티 바이트 문자 문자열입니다._mbschr멀티 바이트 문자 시퀀스를 인식합니다.또한, null 포인터, 문자열의 경우 _mbschr 에 설명 된 대로 잘못 된 매개 변수 처리기를 호출 합니다. 매개 변수 유효성 검사.실행을 계속 하려면 허용 되는 경우 _mbschr 반환 NULL 을 설정 하 고 errno 에 EINVAL.strchr및 wcschr 매개 변수의 유효성을 검사 하지 않습니다.이러한 세 가지 함수 그렇지에 동일 하 게 동작 합니다.

출력 값의 설정에 의해 영향을 받지는 LC_CTYPE 범주 설정 로케일입니다. 자세한 내용은 >setlocale.없이 이러한 함수 버전을 _l 접미사는 현재 로케일에 대 한이 로케일 종속 동작; 사용 버전으로는 _l 접미사는 대신 전달 로캘 매개 변수를 사용 하는 경우를 제외 하 고 동일 합니다.자세한 내용은 로캘을 참조하십시오.

C에서 이러한 함수를 사용을 const 첫 번째 인수에 대 한 포인터입니다.C + +에서는 두 가지 오버 로드를 사용할 수 있습니다.에 대 한 포인터를 사용 하는 오버 로드 const 에 대 한 포인터를 반환 합니다. const. 비에 대 한 포인터를 사용 하는 버전-const 비에 대 한 포인터를 반환-const.매크로 _CONST_CORRECT_OVERLOADS 모두 정의 되어 있는 const 가 아닌-const 버전의이 함수 사용할 수 있는.비 필요로 하는 경우-const 동작 모두 c + + 오버 로드에 대 한 기호 _const_return을 정의 합니다.

일반 텍스트 루틴 매핑

TCHAR입니다.H 루틴

_UNICODE 및 _Mbcs가 정의 되어 있지 않습니다

_Mbcs가 정의

_Unicode가 정의

_tcschr

strchr

_mbschr

wcschr

_n/a

n/a

_mbschr_l

n/a

요구 사항

루틴

필수 헤더

strchr

<string.h>

wcschr

<string.h> 또는 <wchar.h>

_mbschr, _mbschr_l

<mbstring.h>

호환성에 대 한 자세한 내용은 호환성.

예제

// crt_strchr.c
// 
// This program illustrates searching for a character
// with strchr (search forward) or strrchr (search backward).
//

#include <string.h>
#include <stdio.h>

int  ch = 'r';

char string[] = "The quick brown dog jumps over the lazy fox";
char fmt1[] =   "         1         2         3         4         5";
char fmt2[] =   "12345678901234567890123456789012345678901234567890";

int main( void )
{
   char *pdest;
   int result;

   printf_s( "String to be searched:\n      %s\n", string );
   printf_s( "      %s\n      %s\n\n", fmt1, fmt2 );
   printf_s( "Search char:   %c\n", ch );

   // Search forward. 
   pdest = strchr( string, ch );
   result = (int)(pdest - string + 1);
   if ( pdest != NULL )
      printf_s( "Result:   first %c found at position %d\n", 
              ch, result );
   else
      printf_s( "Result:   %c not found\n", ch );

   // Search backward. 
   pdest = strrchr( string, ch );
   result = (int)(pdest - string + 1);
   if ( pdest != NULL )
      printf_s( "Result:   last %c found at position %d\n", ch, result );
   else
      printf_s( "Result:\t%c not found\n", ch );
}
  

해당 .NET Framework 항목

System::String::IndexOf

참고 항목

참조

문자열 조작 (CRT)

로캘

멀티 바이트 문자 시퀀스로 해석

strcspn, wcscspn, _mbscspn, _mbscspn_l

strncat, _strncat_l, wcsncat, wcsncat_l, _mbsncat _mbsncat_l

strncmp, wcsncmp, _mbsncmp, _mbsncmp_l

strncpy, _strncpy_l, wcsncpy, _wcsncpy_l, _mbsncpy, _mbsncpy_l

_strnicmp, _wcsnicmp, _mbsnicmp, _strnicmp_l, _wcsnicmp_l, _mbsnicmp_l

strpbrk, wcspbrk, _mbspbrk, _mbspbrk_l

strrchr, wcsrchr, _mbsrchr, _mbsrchr_l

strstr, wcsstr, _mbsstr, _mbsstr_l