FILETABL.C
资源名称:C.rar [点击查看]
上传用户:qq5388545
上传日期:2022-07-04
资源大小:29849k
文件大小:1k
源码类别:

界面编程

开发平台:

C/C++

  1. #include <stdio.h>
  2. #include <dos.h>
  3. #include <stdlib.h>
  4. void main (void)
  5.   {
  6.     struct fcbs {
  7.       char drive; 
  8.       char filename[8]; 
  9.       char extension[3];
  10.       int current_block;
  11.       int record_size;
  12.     };
  13.     typedef struct fcbs fcb;
  14.     struct program_segment_prefix {
  15.       char near *int20;
  16.       char near *next_paragraph_segment;
  17.       char reserved_1;
  18.       char dos_dispatcher[5];
  19.       char far *terminate_vector;
  20.       char far *ctrlc_vector;
  21.       char far *critical_error_vector;
  22.       char near *parent_psp; 
  23.       unsigned char file_table[20];
  24.       char near *environment_block_segment;
  25.       char far *stack_storage;
  26.       int  handles_available;
  27.       char far *file_table_address;
  28.       char far *shares_previous_psp;
  29.       char reserved_2[20];
  30.       char dos_int21_retf[3];
  31.       char reserved_3[9];
  32.       fcb fcb1;
  33.       fcb fcb2;
  34.       char reserved_4[4];
  35.       char command_tail[128];
  36.     } far *psp;
  37.     int i;
  38.     psp = (struct program_segment_prefix far *) ((long) _psp << 16);
  39.  
  40.     for (i = 0; i < 20; i++)
  41.       printf("Entry %d contains %xn", i, psp->file_table[i]);
  42.   }