next up previous contents
Next: Parsing and Formatting Up: Str Class Documentation Previous: char* Methods   Contents

Handling I/O

The Str class supports both C-style and C++-style I/O functions.

If you choose to use C I/O, the char* conversion functions detailed in chapters 5 and 6 will give you the tools you need to interface the C I/O library. The main function for C output is the const char* casting function. The main functions for C input are attach(), detach() and constructors that take char* input parameters. You can also opt to use the = operator to copy data between Str objects and char* buffers if that is what works best for your program.

When using the C++ I/O model, the main functions you will use are the >> and << stream operators. These functions make it relatively easy to input and output string data. For example, to capture a line of input directly into a Str object, the command is simply:

  Str x;
  cin >> x;

When using the >> operator the string will automatically grow as needed to accommodate input data. The resize rules are the save as those described in chapter 5, meaning that you can start with a stack-based input buffer that will reallocate to the heap automatically if required.

To output data in C++, the operator is <<, just as you would expect. Here is an example that prints a message to the screen. This example mixes a number of types:

  const char* hello = "Hello";
  Str today = "today";
  cout << hello << ", How are you " << today << "?" << endl;


next up previous contents
Next: Parsing and Formatting Up: Str Class Documentation Previous: char* Methods   Contents
2007-05-05