文档介绍:int RgbToGray(){    LONG w,h;    BYTE r,g,b;    BYTE gray;    BYTE count24,count8;    BYTE Bmpnul=0;    char SrcBmpfile[256];    char DestBmpfile[256];        BITMAPFILEHEADERbmfh; //bmp文件头    BITMAPINFOHEADERbmih; //位图信息头    BYTE *data;    memset(&bmfh, 0, sizeof(BITMAPFILEHEADER));//内存初始化    memset(&bmih, 0, sizeof(BITMAPINFOHEADER));    data=(BYTE *)malloc(3*sizeof(BYTE));    if(!data)        {           printf("Error:Cannotallocatememory.\n");           free(data);           return -1;        }    getchar();    printf("InputthepathofSrcBmpfile:\n");    gets(SrcBmpfile);    if((fpSrcBmpfile=fopen(SrcBmpfile,"rb"))==NULL)     {        printf("Error:OpenthefileofSrcBmpfilefailed!\n");//输入源位图文件        free(data);        return -1;    }        rewind(fpSrcBmpfile);    GetBmpHeader(&bmfh,&bmih);//ceshie_start    printf("ThecontentsinthefileheaderoftheBMPfile:\n");    printf("bfType:%ld\n",);    printf("bfSize:%ld\n",);    printf("bfReserved1:%ld\n",);    printf("bfReserved2:%ld\n",);    printf("bfOffBits:%ld\n",);    printf("Thecontentsintheinfoheader:\n");    printf("biSize:%ld\n",);//ceshi_end    if(!=0x4D42)    {        printf("Error:Thisfileisnotbitmapfile!\n");        free(data);        return -1;    }    if(!=24)    {        printf("Error:Thisbmpfileisnot24bitbitmap!\n")