관리 메뉴

(코딩캣) = "코딩"하는 고양이;

대/소문자 변환 예제 본문

자작 프로그램

대/소문자 변환 예제

컴파일러님, 이 코드는 고양이발로 작성되었습니다. 코딩집사 2011.02.27 15:16

#include <stdio.h>
#include <conio.h>

// 대문자인지검사합니다.
#define ISUPPER(c) (('A' <= c) && (c <= 'Z'))
// 소문자인지검사합니다.
#define ISLOWER(c) (('a' <= c) && (c <= 'z'))
// 소문자로바꿉니다.
#define TOUPPER(c) (c - ('a' - 'A'))
// 대문자로바꿉니다.
#define TOLOWER(c) (c + ('a' - 'A'))
 
// 지정한문자열을모두대문자로...
char * to_UpperString(char * _dest, const char * _src);
// 지정한문자열을모두소문자로...
char * to_LowerString(char * _dest, const char * _src);
 
int main()
{
	char str[] = "MULTI - campus";
	char buf[32];
 
	to_UpperString(buf, str);
	printf("to_UpperString: %s -> %s\n", str, buf);
 
	to_LowerString(buf, str);
	printf("toLowerString: %s -> %s\n", str, buf);
 
	_getch();
 
	return 0;
}

char * to_UpperString(char * _dest, const char * _src)
{
	char * ret = _dest;
	// _dest는미리할당되어있다고가정합니다.
 
	do
	{
	       if(ISLOWER(*_src))
		       *_dest++ = (char)TOUPPER(*_src);
	       else
		       *_dest++ = *_src;
	} while(*_src++ != '\0');
 
	*_dest = '\0';
	
	return ret;
}
 
char * to_LowerString(char * _dest, const char * _src)
{
	char * ret = _dest;
	// _dest는미리할당되어있다고가정합니다.
 
	do
	{
	       if(ISUPPER(*_src))
		       *_dest++ = (char)TOLOWER(*_src);
	       else
		       *_dest++ = *_src;
	} while(*_src++ != '\0');
 
	*_dest = '\0';
	
	return ret;
}

아니... 뭐... 별 건 없고 심심해서 그냥 만들어 봤음.

0 Comments
댓글쓰기 폼