다음을 통해 공유


_strlwr, _wcslwr, _mbslwr, _strlwr_l, _wcslwr_l_mbslwr_l

문자열을 소문자로 변환합니다. 이러한 함수의 더 안전한 버전을 사용할 수 있습니다. _strlwr_s, _strlwr_s_l, _mbslwr_s, _mbslwr_s_l, _wcslwr_s, _wcslwr_s_l을 참조하세요.

Important

Windows 런타임에서 실행되는 애플리케이션에서는 _mbslwr_mbslwr_l을 사용할 수는 없습니다. 자세한 내용은 유니버설 Windows 플랫폼 앱에서 지원되지 않는 CRT 함수를 참조하세요.

구문

char *_strlwr(
   char * str
);
wchar_t *_wcslwr(
   wchar_t * str
);
unsigned char *_mbslwr(
   unsigned char * str
);
char *_strlwr_l(
   char * str,
   _locale_t locale
);
wchar_t *_wcslwr_l(
   wchar_t * str,
   _locale_t locale
);
unsigned char *_mbslwr_l(
   unsigned char * str,
   _locale_t locale
);
template <size_t size>
char *_strlwr(
   char (&str)[size]
); // C++ only
template <size_t size>
wchar_t *_wcslwr(
   wchar_t (&str)[size]
); // C++ only
template <size_t size>
unsigned char *_mbslwr(
   unsigned char (&str)[size]
); // C++ only
template <size_t size>
char *_strlwr_l(
   char (&str)[size],
   _locale_t locale
); // C++ only
template <size_t size>
wchar_t *_wcslwr_l(
   wchar_t (&str)[size],
   _locale_t locale
); // C++ only
template <size_t size>
unsigned char *_mbslwr_l(
   unsigned char (&str)[size],
   _locale_t locale
); // C++ only

매개 변수

str
소문자로 변환할 Null 종료 문자열입니다.

locale
사용할 로캘입니다.

반환 값

이러한 각 함수는 변환된 문자열에 대한 포인터를 반환합니다. 수정은 현재 위치에서 수행되므로 반환되는 포인터는 입력 인수로 전달되는 포인터와 같습니다. 반환 값 없음은 오류를 나타내는 데 예약되어 있습니다.

설명

_strlwr 함수는 로캘의 LC_CTYPE 범주 설정에 따라 결정된 대로 str의 대문자를 소문자로 변환합니다. 다른 문자는 영향을 받지 않습니다. LC_CTYPE에 대한 자세한 내용은 setlocale를 참조하세요. 접미사가 없는 _l 이러한 함수 버전은 로캘 종속 동작에 현재 로캘을 사용합니다. 접미사가 있는 _l 버전은 전달된 로캘을 대신 사용한다는 점을 제외하고 동일합니다. 자세한 내용은 Locale을 참조하세요.

_wcslwr_mbslwr 함수는 _strlwr의 와이드 문자 및 멀티바이트 문자 버전입니다. 인수 및 반환 값 _wcslwr 은 와이드 문자열입니다. 인수 및 반환 값 _mbslwr 은 멀티바이트 문자열입니다. 그렇지 않으면 이들 세 함수는 동일하게 작동합니다.

포인터인 NULL 경우 str 매개 변수 유효성 검사에 설명된 대로 잘못된 매개 변수 처리기가 호출됩니다. 계속해서 실행하도록 허용된 경우, 이러한 함수는 원래 문자열을 반환하고 errnoEINVAL로 설정합니다.

C++에서 이러한 함수는 보다 최신의 보안 대응 함수를 호출하는 템플릿 오버로드를 갖고 있습니다. 자세한 내용은 안전한 템플릿 오버로드를 참조하세요.

기본적으로 이 함수의 전역 상태는 애플리케이션으로 범위가 지정됩니다. 이 동작을 변경하려면 CRT 전역 상태를 참조하세요.

일반 텍스트 루틴 매핑

TCHAR.H 루틴 _UNICODE_MBCS 정의되지 않음 정의된 _MBCS 정의된 _UNICODE
_tcslwr _strlwr _mbslwr _wcslwr
_tcslwr_l _strlwr_l _mbslwr_l _wcslwr_l

요구 사항

루틴에서 반환된 값 필수 헤더
_strlwr, _strlwr_l <string.h>
_wcslwr, _wcslwr_l <string.h> 또는 <wchar.h>
_mbslwr, _mbslwr_l <mbstring.h>

호환성에 대한 자세한 내용은 호환성을 참조하세요.

예시

// crt_strlwr.c
// compile with: /W3
// This program uses _strlwr and _strupr to create
// uppercase and lowercase copies of a mixed-case string.
#include <string.h>
#include <stdio.h>

int main( void )
{
   char string[100] = "The String to End All Strings!";
   char * copy1 = _strdup( string ); // make two copies
   char * copy2 = _strdup( string );

   _strlwr( copy1 ); // C4996
   // Note: _strlwr is deprecated; consider using _strlwr_s instead
   _strupr( copy2 ); // C4996
   // Note: _strupr is deprecated; consider using _strupr_s instead

   printf( "Mixed: %s\n", string );
   printf( "Lower: %s\n", copy1 );
   printf( "Upper: %s\n", copy2 );

   free( copy1 );
   free( copy2 );
}
Mixed: The String to End All Strings!
Lower: the string to end all strings!
Upper: THE STRING TO END ALL STRINGS!

참고 항목

문자열 조작
Locale
_strupr, _strupr_l, _mbsupr, _mbsupr_l, _wcsupr_l_wcsupr