home *** CD-ROM | disk | FTP | other *** search
/ Turbo Toolbox / Turbo_Toolbox.iso / dtx9202 / borhot / stdbin.c < prev   
C/C++ Source or Header  |  1992-01-06  |  2KB  |  43 lines

  1. /* ------------------------------------------------------ */
  2. /*                    STDBIN.C                            */
  3. /*            (c) 1990 Borland International              */
  4. /*             example of binary redirection              */
  5. /*                 All rights reserved.                   */
  6. /* ------------------------------------------------------ */
  7. /*  veröffentlicht in: DOS toolbox 2'92                   */
  8. /* ------------------------------------------------------ */
  9.  
  10. /*
  11.   It is sometimes necessary to change stdin or stdout to
  12.   binary prior to redirection. For instance, redirecting a
  13.   graphics screen to a graphics capable printer would
  14.   require such a change. This program demonstrates a method
  15.   for accomplishing this task.
  16. */
  17.  
  18. #include <stdio.h>   // for fileno(), stdout and fputc()
  19. #include <io.h>      // for ioctl() and setmode(),
  20. #include <fcntl.h>   // for O_BINARY
  21.  
  22. // There are 3 things that need to be done.
  23.  
  24. // ------------------------------------------------------- *
  25. int main(void)
  26. {
  27.   int hndl = fileno(stdout);
  28.   int info = ioctl(hndl, 0);
  29.  
  30.   setmode(hndl, O_BINARY);          // handle to binary mode
  31.   ioctl(hndl, 1, (info & 0xff) | 0x20);// device to raw mode
  32.   stdout->flags |= _F_BIN;          // stream to binary mode
  33.  
  34.   fputc('\n', stdout);
  35.         //                          // your code goes here
  36.         //
  37.   ioctl(hndl, 1, info & 0xff);      // restore original mode
  38.   return 0;
  39. } // end of main()
  40. /* ------------------------------------------------------ */
  41. /*                   Ende von STDBIN.C                    */
  42.  
  43.