C : EOF를 시뮬레이션하는 방법?
-
12-09-2019 - |
문제
현재 K & R의 책을 읽고 첫 번째 섹션의 예제에서 입력하고 있으며 다음과 같은 몇 가지 예가 있습니다.
while((c = getchar()) != EOF) {
//do something
}
이 예제를 Windows 상자에서 테스트하여 컴파일 된 EXE 파일을 cmd
즉각적인.
위의 예를 테스트하려면 어떻게 시뮬레이션합니까? EOF
? 즉, 기본적으로 명령 프롬프트에서 예제를 테스트 할 때 어떻게 루프 중지를 할 수 있습니까?
해결책
EOF를 입력하려면 사용하십시오.
- ^z (Ctrl 키지) Windows에서
- ^D UNIX와 같은 시스템에서
다른 팁
나타내다 EOF
Windows: Ctrl+Z
Unix :Ctrl+D
먼저, Ctrl^x, 다음 : ctrl^d를 누릅니다.
int 변수에 -1의 값을 명시 적으로 제공하여 EOF를 시뮬레이션 할 수도 있습니다.
더 명확성을 위해이 코드를 확인하십시오.
#include<stdio.h>
int main() {
// char ch=getchar()
// int ch=-1;
if(ch==EOF) { printf("\nEOF: %d",EOF); }
if((ch!=EOF)==0) { printf("\nit is equal to 0"); }
if((ch!=EOF)==1) { printf("\nit is equal to 1"); }
else { printf("\n it is equal to other value"); }
system("pause");
return 0;
}
제휴하지 않습니다 StackOverflow