c프로그래밍 분석좀 해주세요 ㅠㅠ
풍란
질문 제목 : c프로그래밍 분석좀 해주세요이 프로그래밍이 rgb.raw파일을 불러와서 red, green, blue, gray성분으로 나누는 겁니다. 이 프로그래밍에 대한 분석? 아니면 설명좀 해주세요... (예를 들어 이거는 이 용도로 사용되는 함수입니다. 이렇게요) 부탁드립니다 ㅠㅠ질문 내용 :
#include stdio.h
unsigned char *f1,*fr,*fg,*fb,*gray;
char picture[512*512*3];
char rp[512*512];
char gp[512*512];
char bp[512*512];
char grayp[512*512];
void main()
{
int i;
file *fp1, *fpr, *fpg, *fpb, *fpgray;
f1=&picture[0];
fr=&rp[0];
fg=&gp[0];
fb=&bp[0];
gray=&grayp[0];
fp1=fopen(rgb.raw,rb);
fread(f1,sizeof(char),512*512*3,fp1);
for(i=0; i=512*512; i++)
{
*(fr+i)=*(f1+3*i);
*(fg+i)=*(f1+3*i+1);
*(fb+i)=*(f1+3*i+2);
*(gray+i)=*(f1+3*i)*0.2126+*(f1+3*i+1)*0.7152+*(f1+3*i+2)*0.0722;
}
fpr=fopen(red.raw,wb);
fwrite(fr,sizeof(char),512*512,fpr);
fpg=fopen(green.raw,wb);
fwrite(fg,sizeof(char),512*512,fpg);
fpb=fopen(blue.raw,wb);
fwrite(fb,sizeof(char),512*512,fpb);
fpgray=fopen(gray.raw,wb);
fwrite(gray,sizeof(char),512*512,fpgray);
fclose(fp1);
fclose(fpr);
fclose(fpg);
fclose(fpb);
fclose(fpgray);
}