#include "stdio.h"
#include "stdlib.h"
#include "windows.h"


void main() {
 int i,j;
 int Hist[256]; //히스토그램 배열.
 int Mvalue = 0; //히스토그램 최대값 변수.
 unsigned char oimage[256][256];
 unsigned char dimage[256][256];

 FILE *inimage, *outimage;

 inimage=fopen("lena256.bmp", "rb");
 if(inimage==NULL) {
  printf("파일을 찾을 수 없습니다.\n");
  return ;
 }
 fread(oimage, sizeof(char), 256*256, inimage);
 fclose(inimage);

 //Hist 0으로 초기화.
 memset(Hist,0,sizeof(int)*256);
 //히스토그램 계산.
 for(i=0; i<256; i++) {
  for(j=0; j<256; j++) {
   Hist[oimage[i][j]]++; //현재 픽셀값을 히스토그램 배열에 저장.
   if(Mvalue<Hist[oimage[i][j]]) //히스토그램 최대값 계산.
    Mvalue=Hist[oimage[i][j]];
  }
 }
 //화면 전체를 255로 만듬.
 memset(dimage, 255, sizeof(unsigned char)*256*256);
 for(i=0; i<256; i++) {
  int Value=Hist[i]*255/Mvalue;//히스토그램 최대값이 255가 되도록 그림.
  for(j=0; j<Value; j++) {
   dimage[255-i][j]=255;//히스토그램 크기만큼 검은색으로 출력.
  }
 }

 outimage=fopen("lenahh.bmp", "wb"); 
 fwrite(oimage, sizeof(char), 256*256, outimage);
 fclose(outimage);
}
이렇게 해서 실행했는데 히스토그램이고 뭐고  생성된 파일도 않열리는데 왜그럴까요