ofstream으로 파일을 오픈할때, 오픈이 안됐는지 문제가 생깁니다
글쓴이: eyes852 / 작성시간: 월, 2011/04/11 - 3:40오후
일단 "C++을 사용한 객체지향 접근방식 파일구조" 라는 책으로 공부를 하고 있고요...
여기서 필드를 각각 고정된 크기, 가변적 크기 방식으로 저장하는 예제를 해 보는 도중
void testBuffer(IOB& Buff, char* myfile)
{
Person person;
int result;
ofstream TestOut(myfile, ios::out);
result = Buff.WriteHeader(TestOut);
(이하 생략)
}
Buff는 파일로 전송할 레코드를 저장한 버퍼,
myfile 이 파일 이름입니다.
함수 호출은
testBuffer(Buff, "fixlen.dat");
식으로 사용됬고요;
위의 소스에서, ofstream 객체 TestOut을 WriteHeader함수 인자로 넘기는 과정에서 메모리 충돌이 납니다;
0x00000000 위치를 읽는다고.. 파일이 오픈이 안된건지, 객체 생성에 오류가 있는건지 잘 모르겠네요...
하지만 폴더에 파일은 생성되 있고.... 대체 뭐가 문제인 걸까요?
전체 소스를 다 올리지 못하고 오류 발생 부분만 올려서 죄송합니다 ;;;
이부분만의 문제인지 아니면 다른 부분이랑 연동된 문젠지를 잘 모르겠네요 ㅠ0 ㅠ
Forums:
혹시 IOB& Buff에서 참조자가 NULL을
혹시 IOB& Buff에서 참조자가 NULL을 가르키고 있지 않는지 확인해보세요. 참조자도 NULL을 가르킬 수 있습니다.
-------------------------------------------------------------------------------
It's better to appear stupid and ask question than to be silent and remain stupid.
댓글 달기