2009-12-10 1 views
0

왜 첫 번째 픽셀 (왼쪽 하단)이 올바르게로드되었지만 다른 픽셀은로드되지 않습니다. 첫 번째 색상은 C++ : fread와 fwrite의 루프를 사용하여 bmp를 복사하면 출력 bmp는 입력 bmp에서 fisrt의 색상으로 채워집니다.

내가 사이클이가 ... 전체 그림에 사용되는

fread(&pix,sizeof(pix),1,pictureIn); 
fwrite(&pix,sizeof(pix),1,pictureOut); 

편집 :

PIX 세 부호 문자 (RGB),로드 파일과 정보를 헤더의 구조체이다 좋아 보인다.

+0

충분한 정보를 제공하지 않았습니다. pix이란 무엇입니까? 크기를 어떻게 압니까? – dmazzoni

+0

무엇이 잘못되었는지 알 수 있도록 반환 값을 실제로 확인합니까? –

+1

아마도 파일을 열었을까요? 넌 어떻게 그걸 했니? 예를 들어 바이너리 모드로 열 었습니까? 그리고 이것은 반복되어 있습니까? 당신은 아이디어를 얻습니다 - 우리는 독자들에게 마음이 아닙니다. –

답변

1

어떤 OS를 사용하고 있습니까? 최근 Win32에서 이진 파일을 읽는 데 문제가있었습니다. fopen에 "b"플래그를 전달하는 것을 잊어 버렸습니다.

pictureIn = fopen ("in.bmp", "rb"); 
pictureOut = fopen ("out.bmp", "wb"); 
관련 문제