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

📄 crmain.c

📁 硬盘修复参考源码。其中包括对扇区读写剪切等操作的具体代码。
💻 C
字号:
//********************************************
//文件名:CRMAIN.C
//功能:1. 调用显示汉字函数
//   2. 调用字符处理函数
//   3. 读硬盘0面0头1扇区数据并建立存储文件
//      4. 将数据用十六进制显示在屏幕上
//********************************************
#include<stdio.h>                           //1.
#include<string.h>                          //2.
#include<bios.h>                            //3.
#include<graphics.h>                        //4.
int outhz(int,int,char *,int);              //5.对调用函数的声明
void finame(int,int);                       //6.对调用函数的声明
void main()                                 //7.
{                                           //8.
   extern char gsh[16];                     //9.声明数组是外部变量
   FILE *fp;                                //10.
   char h[512];                             //11.
   int i,j;                                 //12.
   int cyl=0,head=0,sector=1;               //13.
   int gdriver=DETECT,gmode;                //14.将图形驱动定义为自动检测
                                            //15.
   registerbgidriver(EGAVGA_driver);        //16.装入图形驱动程序
   initgraph(&gdriver,&gmode,"");           //17.初始化图形屏幕
   setbkcolor(0);                           //18.设置背景颜色
   cleardevice();                           //19.清除整个屏幕
   outhz(0,20,"输入文件名:",7);            //20.调用显示函数并传递参数
   finame(100,20);                          //21.调用字符处理函数
   closegraph();                            //22.关闭图形方式
   printf("\n\n");                          //23.
                                            //24.
   fp=fopen(gsh,"wb+");                     //25.以二进制读写方式打开文件
   biosdisk(0x02,0x80,head,cyl,sector,1,h); //26.调用函数将扇区数据读入数组
   for(i=0;i<=511;i++)                      //27.
     fputc(h[i],fp);                        //28.将数据输出到文件
   rewind(fp);                              //29.使指针回到文件头
   for(i=1;i<=512;i++)                      //30.
   {                                        //31.
     j=fgetc(fp);                           //32.读一个字节
     printf("%2x",j);                       //33.输出十六进制数据
     if(i%32==0)                            //34.32个字节换行
       printf("\n");                        //35.
   }                                        //36.
   fclose(fp);                              //37.关闭文件
   printf("\n");                            //38.
}                                           //39.
char gsh[16];                               //40.定义全局数组变量

⌨️ 快捷键说明

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