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

📄 b.c

📁 这个是在linux下面的用c语言读写虚拟软盘的源程序
💻 C
字号:
#include<stdio.h>struct f{	char filename[8];	char fileex[3];	char shuxing;	char baoliu[10];	char shijian[2];	char riqi[2];	char qishi[2];	char daxiao[4];}file[244];int fd_rename(char *oldfilename,char *newfilename){	int f,i,j,k,l,ll;	char name[11];	if((f=open("/dev/fd0",2))!=-1)	{        lseek(f,512*19,SEEK_SET);		read(f,file,7168);		i=0;		j=0;                k=0;		while(1)		{			if(file[i].filename[0]!=0xF5&&                           file[i].filename[0]!=0x00&&                           file[i].shuxing!=0x08)			{				l=0;                                while(file[i].filename[l]!=0x20&&l<8)                                {                                 name[l]=file[i].filename[l];                                 l++;                                }                                ll=0;                                       while(file[i].fileex[ll]!=0x20&&ll<3)                                {                                 if(ll==0){l++;name[ll+l-1]='.';}                                 name[ll+l]=file[i].fileex[ll];                                 ll++;                                }              			name[l+ll]='\0';		        	while(name[j]!=0x20&&oldfilename[j]!='\0')				{                                 if(oldfilename[j]=='\0')break;                                 if(name[j]!=oldfilename[j])break;			       	 j++;				}				if(name[j]=='\0'&&                                   oldfilename[j]=='\0')				{				 while(newfilename[k]!='\0')				 {				  name[k]=newfilename[k];				  k++;				 }				 break;				}			}			j=0;			k=0;			i++;                        if(i==244)break;                        		}    if(i==244)return -1;    else     {     j=0;     l=0;     k=0;     while(newfilename[j]!='.'&&newfilename[j]!='\0')     {      file[i].filename[j]=newfilename[j];      j++;     }        l=j;     while(l<8){file[i].filename[l]=0x20;l++;}     j++;         while(newfilename[j+k]!='\0')     {if(k==0&&newfilename[j+k-1]!='.')break;      file[i].fileex[k]=newfilename[j+k];           k++;     }     while(k<3){file[i].fileex[k]=0x20;k++;}     lseek(f,19*512,SEEK_SET);     if(write(f,file,7168)==-1)printf("error write\n");     return 0;     }    }    else printf("error to open derive!\n");    return 0;}void main(){ char *p1,*p2; char a[10],b[10]; int f; p1=a; p2=b; scanf("%s",a); scanf("%s",b); f=fd_rename(p1,p2); if(f!=0)printf("Can't find the file!\n");}

⌨️ 快捷键说明

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