キャラクタフローティングポイント
1642 ワード
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
typedef char BYTE ;
typedef float DWORD;
int main()
{
int i;
FILE *fp1,*fp2;
BYTE *data1=(BYTE *)malloc(400*640*sizeof(BYTE));
DWORD *data2=(DWORD *)malloc(400*640*sizeof(DWORD));
if((fp1=fopen("bhtmref.img","rb"))==NULL)
{
printf("can not open file!");
return 0;
}
if((fp2=fopen("sample2.txt","w"))==NULL)
{
printf("can not open file!");
return 0;
}
memset(data1,0,400*640*sizeof(BYTE)); /* */
memset(data2,0,400*640*sizeof(DWORD));
fread(data1,sizeof(char),400*640,fp1); /* fp1 data1*/
for(i=0;i<400*640;i++)
{
data2[i]=((int)data1[i])*1.0; /* data1 */
}
for(i=0;i<400*640;i++)
{
if(i%640==0) /* 640 */
{
if(i==0) /* , */
{
fprintf(fp2,"%-4.0f",data2[i]);
}
else
{
fprintf(fp2,"
",data2[i]); /* 640 */
fprintf(fp2,"%-4.0f",data2[i]); /* , */
}
}
else
{
fprintf(fp2,"%-4.0f",data2[i]); /* fp2 */
}
}
fclose(fp1);
fclose(fp2);
free(data1);
free(data2);
return 0;
}