내가 포함 된 텍스트 파일을 읽는 아주 간단한 프로그램이 서로 다른 출력마다 시간을 제공 :엑스 코드는 (그러나 올바른 출력)
start
costam
stop
이 프로그램은 다음과 같습니다
#include <iostream>
#include <fstream>
using namespace std;
int main (int argc, const char * argv[])
{
printf("init\n");
char c = NULL;
ifstream file;
file.open(argv[1]);
while (file.good()){
c = file.get();
printf("%c", c);
}
return 0;
}
엑스 코드 빌드가 초기화 콘솔에서 제공합니다
init
start
costam
stop?
하지만, 엑스 코드 콘솔은 나에게 제공합니다
를init
또는
init
start
또는
init
start
costam
때로는 아무것도
. 패턴이 없습니다. 당신은 당신이하지 전에 읽어 후file.good()
을 확인해야하기 때문에 for (;;){
c = file.get();
if (!file.good())
break;
printf("%c", c);
}
해야 수정 버그
while (file.good()){
c = file.get();
printf("%c", c);
}
를 엑스 코드 4.2
고맙습니다. 그것은 모든 문제를 해결했습니다. 그러나 그것은 정말로 별나다. – user2207925
@ user2207925 놀랍습니다. – john