Chapter 31. Performing Streaming I/O

In This Chapter

  • Using stream I/O — an overview

  • Opening an object for file input and output

  • Detecting errors when performing file I/O

  • Formatting output to a file

  • Using the stream classes on internal buffers for easy string formatting

I gave you a template to follow when generating new programs in Chapter 2. Since you were just starting the journey to C++, I asked you to take a lot of what was in that template on faith; then throughout subsequent chapters, I explained each of the features of the template. There's just one item remaining: stream input/output (commonly shortened to just I/O).


I must warn you that stream I/O can't be covered completely in a single chapter — entire books are devoted to this one topic. Fortunately, however, you don't need to know too much about stream I/O in order to write the vast majority of programs.

How Stream I/O Works

Stream I/O is based on overloaded versions of operator>>() and operator<<() (known as the right-shift and left-shift operators, respectively)

Note: I don't cover the << (left-shift) and >> (right-shift) operators in my discussion of arithmetic operators in Chapter 4, as these perform bit operations that are beyond the scope of a beginning programmer.

The prototype declarations for the stream operators are found in the include file iostream. The code for these functions is part of the Standard C++ Library that your programs link with by default. That's why the standard template starts out with #include ...

Get Beginning Programming with C++ For Dummies® now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.