#include <stdio.h>
#ifdef _unix_
    #inlcude <unistd.h>
#else
    #include <io.h>
#endif

int main()
{
   FILE *fz;
   int fd,fd2;
   char datei[255];

   printf("Filedeskriptoren zu stdin, stdout und stderr : ");
   printf("%d, %d und %d\n",fileno(stdin),fileno(stdout),fileno(stderr));

   printf("Welche Datei wollen sie oeffnen : ");
   scanf("%s",datei);

   fz=fopen(datei, "r");
   if(!fz)
     perror(NULL);

   fd = fileno(fz);
   printf("Der Filedeskriptor zur  Datei %s lautet %d\n",datei,fd);

   fd2=dup(fd);
   printf("Der Filedeskriptor der mit dup() kopiert wurde lautet %d\n",fd2);

   return 0;
}