Q 12.1 이 코드에서 잘못된 부분이 있나요? char c; while ((c = getchar()) != EOF) ... Answer 일단, getchar의 리턴 값을 저장하는 변수는 반드시 int이어야 합니다. getchar()는 어떠한 문자 값이나, EOF를 리턴할 수 있습니다. EOF는 int 타입이기 때문에 이 리턴 값을 char에 저장하는 것은 EOF를 잘못 해 석하게 할 소지가 있습니다 (특히 char의 타입이 unsigned인 경우 문제가 심각합니다). 위의 코드처럼 getchar()의 리턴값을 char에 담을 경우, 두 가지 결과를 예상할 수 있습니다. ² char의 타입이 signed인 경우, 그리고 EOF가 -1로 정의된 경우, 문자 값이 부호 확장(sign extension)되어,..