lBuffer
의 내용을 인쇄 할 수있는 MFC 응용 프로그램에서
fwrite
을 사용하고
는 C++ 코드를 다음과 같이 : 파일 abuffer.bin의 내용이 왜에 fwrite를 사용하여 쓸 수 없습니다()
PvBuffer *lBuffer = NULL;
// Retrieve next buffer
PvResult lResult = lStream.RetrieveBuffer(&lBuffer, &lOperationResult, 1000);
if (lResult.IsOK())
{
FILE *fp = fopen("C:\\Users\\acm45\\Desktop\\abuffer.bin", "wb");
fwrite(lBuffer, 1, 10075968, fp);
fclose(fp);
}
어떤 생각 항상 IResult
성공을 반환해도 항상 비어 있습니까?
파일은 프로그램을 실행할 때 항상 만들어 지지만 비어 있으며 크기는 0KB입니다.
는 업데이트 : 내가 이런 짓을 디버깅 할 수
:
FILE *fp = fopen("C:\\Users\\acm45\\Desktop\\abuffer.bin", "wb");
if (fp) {
fwrite(lBuffer, 1,10075968, fp);
fclose(fp);
} else {
printf("error opening file");
}
및 하지 인쇄 "오류 파일을 여는"한 출력 만, 여전히 파일이 비어 있습니다. 지금 무엇을해야합니까? 이 일을
탭과 공백이 섞이지 않도록하십시오. 항상 공간을 더 잘 사용하십시오. –
else 분기에'perror' 호출을 추가하십시오 : else {perror ("fopen"); }' – unkulunkulu
정확히 내가 뭘 제안했지만 내 대답 투표 : P –