파일입력해서 데이터 받아오는 문제입니다.
미투리
2023.04.01
질문 제목 :파일입력해서 데이터 받아오는 문제입니다.질문 요약 :while(!feof(datafile))로 파일끝까지 읽어오면 마지막에 쓰레기값이 들어갑니다. 원인을 알고싶습니다.질문 내용 :.dat 파일에서 데이터를 fread로 받아오는 프로그램을 짰습니다. 그런데
while(!feof(datafile))로 돌리면 마지막에 쓰레기값이 들어갑니다.
매트랩 소스를 변환하는 중인데 매트랩에서는 잘돌아갑니다....
아무리 생각해도 원인을 알 수가 없네요 혹시 아시는 분 알려주시면 감사하겠습니다.혼자 하는게 아닌 업무라 소스를 올려드리긴 곤란하고
대략적으로 설명하자면 배열을 만들고 fread를 통해 데이터를 저장시킵니다만..
데이터는 잘 저장이 됩니다 다만 마지막에 끝나지 않고 한번 더 돌아가는 거같습니다.
while( !feof(datafile) )
-
맑은누리
찾아보니 feof함수는 fread에서 정상적으로 파일을 읽은 경우 0을 반환하고 eof를 만나 정상적으로 파일을 읽지 못한 경우 1을 반환한다고합니다. 그럼 마지막까지 읽은 뒤에 쓰레기값을 입력받은 뒤에나 eof인지 알 수 있다는 건데 쓰레기값을 받지 않고 알 수 있는 방법은 없을까요..
-
발랄한그1녀
마지막에 쓰레기값이 들어간다는게 , 정확히 어떤 변수에 어떻게 코드를 짯는데 쓰레기값이 들어간다 정도가 있어야지 답변할수 있을꺼같은데요.