getchar 와 putchar를 이용한 대문자 입력시 소문자로 소문자 입력시 대문자로 변환시켜주는 고전적인 코드를 짜는데
문자를 치고 결과가 출력된후에 한번 스페이스가 띄어진 상태로 커서가 깝빡거려서 그 위치에서 입력하게 되는데,
이게 거슬리는데 왜 그런건지 이해를 못하겠어.
이거 어떤원리로 이렇게 되는지 알려줘 형들
#include <stdio.h>
int main()
{
int ch1=0;
while (1)
{
ch1 = getchar();
if (ch1 >= 65 && ch1 <= 90)
{
ch1 += 32;
putchar(ch1);
printf("\n");
}
else if (ch1 >= 97 && ch1 <= 122)
{
ch1 -= 32;
putchar(ch1);
printf("\n");
}
else if (ch1 == EOF)
break;
else printf("잘못 입력하셨습니다. 다시 입력하세요\n");
ch1 = 0;
fflush(stdin);
putchar(ch1);
}
}
댓글 0