getchar를 이용한 문자개수 세기..
갤원
2023.04.01
getchar에 대해서.질문 요약 :getchar로 문자를 받고
문자의 개수를 출력하는 기능을 구현하려고 합니다
실행한 후에, ex) abcde를 입력한후 ctrl+c를 누르면 개수가 0으로 나오네요..
ex) abcde\n(엔터)를 입력한후 ctrl+c를 누르면 개수가 잘 나오구요..
왜 엔터를 치지 않았을 때는 개수가 세지지 않는걸까요..?
질문 내용 :
int main(void)
{
long nc;
nc=0;
while(getchar()!=EOF) //EOF아닌한
++nc; //문자를 받을때마다 nc를 증가시켜라.
printf(\n%ld\n,nc);//EOF로 빠져나오면, nc값을 출력.
return 0;
}
도와주세요~
-
예님
엔터를 누르는 순간에 입력값이 버퍼로 들어갑니다. 그래서 stdin의 버퍼를 행버퍼라고도 하죠.
-
해찬솔
EOF는 Ctrl+C가 아니고 Ctrl+Z입니다.