⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 readsf.c

📁 硬盘扇区读写技术-修复硬盘与恢复文件随书源代码
💻 C
字号:
//********************************************
//文件名:READSF.C
//功能:读扇区数据文件,用十六进制或字符显示
//********************************************
#include<stdio.h>                               //1.
#include<bios.h>                                //2.
#include<string.h>                              //3.
#include<stdlib.h>                              //4.
void main(int argc,char *argv[])                //5.
{                                               //6.
   char h[512];                                 //7.
   char ch[13];                                 //8.
   FILE *fp;                                    //9.
   long t=0;                                    //10.字节算术值累加和变量
   int i,c;                                     //11.
   if(argc==1)                                  //12.
     {                                          //13.
       printf("Enter READSF /? to get help.");  //14.
       printf("\n");                            //15.
     }                                          //16.
   if((strcmp(argv[1],"/?")==0)&&argc==2)       //17.比较命令行参数
     {                                          //18.
       printf("The syntax of READSF.EXE is:");  //19.
       printf("\n");                            //20.
       printf("1.READSF [/?] is to get help."); //21.
       printf("\n");                            //22.
       printf("2.READSF [/rh] is read file.");  //23.
       printf("\n");                            //24.
       printf("3.READSF [/rc] is read file.");  //25.
       printf("\n");                            //26.
       exit(0);                                 //27.
     }                                          //28.
                                                //29.
   if((strcmp(argv[1],"/rh")==0)                //30.
     ||(strcmp(argv[1],"/RH")==0)               //31.
     &&argc==2)                                 //32.
     {                                          //33.
       printf("Enter file name : ");            //34.
       scanf("%s",ch);                          //35.
       fp=fopen(ch,"rb");                       //36.
       for(i=1;i<=512;i++)                      //37.
       {                                        //38.
         c=fgetc(fp);                           //39.
         printf("%2x",c);                       //40.十六进制输出
         if(i%32==0)                            //41.
         printf("\n");                          //42.
       }                                        //43.
       fclose(fp);                              //44.
       fp=fopen(ch,"rb");                       //45.
       for(i=0;i<=511;i++)                      //46.
         fread(&h[i],1,1,fp);                   //47.
       fclose(fp);                              //48.
       printf("\n");                            //49.
       for(i=0;i<=511;i++)                      //50.
         t+=h[i];                               //51.累加
       printf("Total : %ld\n",t);               //52.输出字节算术值总和
     }                                          //53.
                                                //54.
   if((strcmp(argv[1],"/rc")==0)                //55.
     ||(strcmp(argv[1],"/RC")==0)               //56.
     &&argc==2)                                 //57.
     {                                          //58.
       printf("Enter file name : ");            //59.
       scanf("%s",ch);                          //60.
       fp=fopen(ch,"rb");                       //61.
       for(i=1;i<=512;i++)                      //62.
       {                                        //63.
         fread(&h[i-1],1,1,fp);                 //64.
         printf("%c ",h[i-1]);                  //65.字符输出
         if(i%32==0)                            //66.
         printf("\n");                          //67.
       }                                        //68.
       fclose(fp);                              //69.
       printf("\n");                            //70.
       for(i=0;i<=511;i++)                      //71.
         t+=h[i];                               //72.
       printf("Total : %ld\n",t);               //73.输出字节算术值总和
     }                                          //74.
}                                               //75.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -