<ios> typedefs

 

The latest version of this topic can be found at <ios> typedefs.

ios streamoff streampos
streamsize wios wstreampos

ios

Supports the ios class from the old iostream library.

typedef basic_ios<char, char_traits<char>> ios;  

Remarks

The type is a synonym for template class basic_ios, specialized for elements of type char with default character traits.

streamoff

Supports internal operations.

#ifdef _WIN64  
    typedef __int64 streamoff;  
#else  
    typedef long streamoff;  
#endif  

Remarks

The type is a signed integer that describes an object that can store a byte offset involved in various stream positioning operations. Its representation has at least 32 value bits. It is not necessarily large enough to represent an arbitrary byte position within a stream. The value streamoff(-1) generally indicates an erroneous offset.

streampos

Holds the current position of the buffer pointer or file pointer.

typedef fpos<mbstate_t> streampos;  

Remarks

The type is a synonym for fpos< mbstate_t>.

Example

// ios_streampos.cpp  
// compile with: /EHsc  
#include <iostream>  
#include <fstream>  
  
int main( )   
{  
   using namespace std;  
  
   ofstream x( "iostream.txt" );  
   x << "testing";  
   streampos y = x.tellp( );  
   cout << y << endl;  
}  
7  

streamsize

Denotes the size of the stream.

#ifdef _WIN64  
    typedef __int64 streamsize;  
#else  
    typedef int streamsize;  
#endif  

Remarks

The type is a signed integer that describes an object that can store a count of the number of elements involved in various stream operations. Its representation has at least 16 bits. It is not necessarily large enough to represent an arbitrary byte position within a stream.

Example

After compiling and running the following program, look at the file test.txt to see the effect of setting streamsize.

// ios_streamsize.cpp  
// compile with: /EHsc  
#include <iostream>  
#include <fstream>  
  
int main( )   
{  
   using namespace std;  
   char a[16] = "any such text";  
   ofstream x( "test.txt" );  
   streamsize y = 6;  
   x.write( a, y );  
}  

wios

Supports the wios class from the old iostream library.

typedef basic_ios<wchar_t, char_traits<wchar_t>> wios;  

Remarks

The type is a synonym for template class basic_ios, specialized for elements of type wchar_t with default character traits.

wstreampos

Holds the current position of the buffer pointer or file pointer.

typedef fpos<mbstate_t> wstreampos;  

Remarks

The type is a synonym for fpos< mbstate_t>.

Example

// ios_wstreampos.cpp  
// compile with: /EHsc  
#include <iostream>  
#include <fstream>  
  
int main( )   
{  
   using namespace std;  
   wofstream xw( "wiostream.txt" );  
   xw << L"testing";  
   wstreampos y = xw.tellp( );  
   cout << y << endl;  
}  
7  

See Also

<ios>