home *** CD-ROM | disk | FTP | other *** search
/ Tricks of the Windows Gam…ming Gurus (2nd Edition) / Disc2.iso / vc98 / crt / src / iomanip.cpp < prev    next >
C/C++ Source or Header  |  1998-06-16  |  2KB  |  49 lines

  1. // iomanip -- instantiations of iomanip
  2. #include <locale>
  3. #include <iomanip>
  4. _STD_BEGIN
  5.         // function resetiosflags
  6. static void rsfun(ios_base& iostr, ios_base::fmtflags mask)
  7.     {iostr.setf(ios_base::_Fmtzero, mask); }
  8.  
  9.         // function setiosflags
  10. static void sifun(ios_base& iostr, ios_base::fmtflags mask)
  11.     {iostr.setf(ios_base::_Fmtmask, mask); }
  12.  
  13.         // function setbase
  14. static void sbfun(ios_base& iostr, int n)
  15.     {iostr.setf(n == 8 ? ios_base::oct : n == 10 ? ios_base::dec
  16.         : n == 16 ? ios_base::hex : ios_base::_Fmtzero,
  17.             ios_base::basefield); }
  18.  
  19.         // function setprecision
  20. static void spfun(ios_base& iostr, streamsize n)
  21.     {iostr.precision(n); }
  22.  
  23.         // function setw
  24. static void swfun(ios_base& iostr, streamsize n)
  25.     {iostr.width(n); }
  26.  
  27. _CRTIMP2 _Smanip<ios_base::fmtflags>
  28.     __cdecl resetiosflags(ios_base::fmtflags mask)
  29.     {return (_Smanip<ios_base::fmtflags>(&rsfun, mask)); }
  30.  
  31. _CRTIMP2 _Smanip<ios_base::fmtflags>
  32.     __cdecl setiosflags(ios_base::fmtflags mask)
  33.     {return (_Smanip<ios_base::fmtflags>(&sifun, mask)); }
  34.  
  35. _CRTIMP2 _Smanip<int> __cdecl setbase(int n)
  36.     {return (_Smanip<int>(&sbfun, n)); }
  37.  
  38. _CRTIMP2 _Smanip<streamsize> __cdecl setprecision(streamsize n)
  39.     {return (_Smanip<streamsize>(&spfun, n)); }
  40.  
  41. _CRTIMP2 _Smanip<streamsize> __cdecl setw(streamsize n)
  42.     {return (_Smanip<streamsize>(&swfun, n)); }
  43. _STD_END
  44.  
  45. /*
  46.  * Copyright (c) 1994 by P.J. Plauger.  ALL RIGHTS RESERVED. 
  47.  * Consult your license regarding permissions and restrictions.
  48.  */
  49.