to
함수
to
각 함수와 관련 매크로(있는 경우)는 한 문자를 다른 문자로 변환합니다.
__toascii
tolower
, , _tolower
towlower
toupper
, , _toupper
towupper
설명
to
함수 및 매크로 변환은 다음과 같습니다.
루틴에서 반환된 값 | 매크로 | 설명 |
---|---|---|
__toascii |
__toascii |
c 를 ASCII 문자로 변환 |
tolower |
tolower |
해당하는 경우 c 를 소문자로 변환 |
_tolower |
_tolower |
c 를 소문자로 변환 |
towlower |
None | c 를 해당하는 와이드 문자 소문자로 변환 |
toupper |
toupper |
해당하는 경우 c 를 대문자로 변환 |
_toupper |
_toupper |
c 를 대문자로 변환 |
towupper |
None | c를 해당하는 와이드 문자 대문자로 변환 |
매크로로도 정의된 루틴의 to
함수 버전을 사용하려면 지시문이 있는 #undef
매크로 정의를 제거하거나 포함하지 CTYPE.H
마세요. /Za 컴파일러 옵션을 사용하는 경우 컴파일러는 toupper
또는 tolower
의 함수 버전을 사용합니다. 및 함수의 toupper
선언은 .에 있습니다STDLIB.H
.tolower
__toascii
루틴은 변환된 값이 ASCII 문자 집합의 문자를 나타내도록 c
의 하위 7비트를 제외한 모든 항목을 0으로 설정합니다. c
가 이미 ASCII 문자를 나타내는 경우 c
는 변경되지 않습니다.
tolower
및 toupper
루틴의 특성은 다음과 같습니다.
- 현재 로캘의
LC_CTYPE
범주에 따라 달라집니다. 즉,tolower
은isupper
을 호출하고toupper
은islower
을 호출합니다. c
가 현재 로캘에서 해당하는 대/소문자의 변환 가능한 문자를 나타내며 해당 로캘에서 반대되는 대/소문자가 있는 경우c
를 변환합니다. 그렇지 않은 경우에는c
가 변경되지 않습니다.
_tolower
및 _toupper
루틴의 특성은 다음과 같습니다.
- 로캘과 관련이 없으며 속도가 훨씬 더 빠른
tolower
및 toupper 버전입니다. - isascii(
c
) 및 isupper(c
) 또는 islower(c
) 중 하나가 각각 0이 아닌 경우에만 사용할 수 있습니다. - 변환에 적합한 사례의 ASCII 문자가 아닌 경우
c
정의되지 않은 결과를 갖습니다.
towlower
및 towupper
함수는 다음 조건이 둘 다 0이 아닌 경우에만 변환된 c
복사본을 반환합니다. 그렇지 않은 경우에는 c
가 변경되지 않습니다.
c
가 적절한 대/소문자의 와이드 문자인 경우(즉,iswupper
또는 iswlower이 각각 0이 아닌 경우)- 대상 케이스의 해당 와이드 문자(즉,
iswlower
각각 0이 아닌 경우 또는 iswupper )가 있습니다.
예시
// crt_toupper.c
/* This program uses toupper and tolower to
* analyze all characters between 0x0 and 0x7F. It also
* applies _toupper and _tolower to any code in this
* range for which these functions make sense.
*/
#include <ctype.h>
#include <string.h>
#include <stdio.h>
char msg[] = "Some of THESE letters are Uppercase.";
char *p;
int main( void )
{
printf( "%s\n", msg );
/* Reverse case of message. */
for( p = msg; p < msg + strlen( msg ); p++ )
{
if( islower( *p ) )
putchar( _toupper( *p ) );
else if( isupper( *p ) )
putchar( _tolower( *p ) );
else
putchar( *p );
}
}
Some of THESE letters are Uppercase.
sOME OF these LETTERS ARE uPPERCASE.