📄 ecw.c
字号:
//********************************************
//文件名:ECW.C
//功能:1. 将扇区文件数据用十六进制显示在屏幕上
// 2. 调用汇编子程序将文件数据写入扇区
//********************************************
#include<stdio.h> //1.
#include<conio.h> //2.
#include<ctype.h> //3.
#include<stdlib.h> //4.
extern WHD(int,int,int,int,char *); //5. 声明汇编子程序
void main() //6.
{ //7.
FILE *tmfp,*fp; //8.
unsigned long k; //9.
int i,c; //10.
char *ch; //11.
char sh[512]; //12.
long t=0; //13.
unsigned char s1,s2,s3,s4; //14.
printf("File name:"); //15.
scanf("%s",ch); //16.
fp=fopen(ch,"rb"); //17.
for(i=1;i<=512;i++) //18.
{ //19.
c=fgetc(fp); //20.
printf("%2x",c); //21.显示十六进制数据
if(i%32==0) //22.
printf("\n"); //23.
} //24.
fclose(fp); //25.
fp=fopen(ch,"rb"); //26.
for(i=0;i<=511;i++) //27.
fread(&sh[i],1,1,fp); //28.
fclose(fp); //29.
printf("\n"); //30.
for(i=0;i<=511;i++) //31.
t+=sh[i]; //32.字节累加
printf("Total : %ld\n\n",t); //33.
printf("Is write sector(Y/N)?"); //34.是否写扇区?
while(1) //35.
{ //36.
c=toupper(getch()); //37.
if(c==78) //38.
exit(0); //39.
if(c==89) //40.
break; //41.
} //42.
printf("\n"); //43.
printf("Sector number: "); //44.
scanf("%ld",&k); //45.输入扇区号
tmfp=tmpfile(); //46.
fwrite(&k,4,1,tmfp); //47.
rewind(tmfp); //48.
fread(&s4,1,1,tmfp); //49.
fread(&s3,1,1,tmfp); //50.
fread(&s2,1,1,tmfp); //51.
fread(&s1,1,1,tmfp); //52.
fclose(tmfp); //53.
WHD(s1,s2,s3,s4,ch); //54.调用写扇区子程序
} //55.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -