C语言函数—setfillpattern

函数名

setdta

功 能

设置磁盘传输区地址

用 法

void setdta(char far *dta);

程序例

#include <process.h> 
#include <string.h> 
#include <stdio.h> 
#include <dos.h> 

int main(void) 
{ 
   char line[80], far *save_dta; 
   char buffer[256] = "SETDTA test!"; 
   struct fcb blk; 
   int result; 

   /* get new file name from user */ 
   printf("Enter a file name to create:"); 
   gets(line); 

   /* parse the new file name to the dta */ 
   parsfnm(line, &blk, 1); 
   printf("%d %sn", blk.fcb_drive, blk.fcb_name); 

   /* request DOS services to create file */ 
   if (bdosptr(0x16, &blk, 0) == -1) 
   { 
      perror("Error creating file"); 
      exit(1); 
   } 

   /* save old dta and set new dta */ 
   save_dta = getdta(); 
   setdta(buffer); 

   /* write new records */ 
   blk.fcb_recsize = 256; 
   blk.fcb_random = 0L; 
   result = randbwr(&blk, 1); 
   printf("result = %dn", result); 

   if (!result) 
      printf("Write OKn"); 
   else 
   { 
      perror("Disk error"); 
      exit(1); 
   } 

   /* request DOS services to close the file */ 
   if (bdosptr(0x10, &blk, 0) == -1) 
   { 
      perror("Error closing file"); 
      exit(1); 
   } 

   /* reset the old dta */ 
   setdta(save_dta); 
   return 0; 
} 
  
  

如果引用本站的原创文章,请注明原文链接:,本站保留追究责任的权利!