函数名: dup
功  能: 复制一个文件句柄
用  法: int dup(int handle);
程序例:
#include <string.h>
#include <stdio.h>
#include <conio.h>
#include <io.h>
void flush(FILE *stream);
int main(void)
{
   FILE *fp;
   char msg[] = "This is a test";
   /* create a file */
   fp = fopen("DUMMY.FIL", "w");
   /* write some data to the file */
   fwrite(msg, strlen(msg), 1, fp);
   clrscr();
   printf("Press any key to flush \
   DUMMY.FIL:");
   getch();
   /* flush the data to DUMMY.FIL without
      closing it */
   flush(fp);
   printf("\nFile was flushed, Press any \
   key to quit:");
   getch();
   return 0;
}
void flush(FILE *stream)
{
   int duphandle;
   /* flush TC's internal buffer */
   fflush(stream);
   /* make a duplicate file handle */
   duphandle = dup(fileno(stream));
   /* close the duplicate handle to flush the
      DOS buffer */
   close(duphandle);
}