Using cout.width() in C++

By: Ivan Lim Viewed: 154434 times  Printer Friendly Format    


The default width of your output will be just enough space to print the number, character, or string in the output buffer. You can change this by using width(). Because width() is a member function, it must be invoked with a cout object. It only changes the width of the very next output field and then immediately reverts to the default. Listing below illustrates its use.

Adjusting the width of output.

1:     //Adjusting the width of output
2:     #include <iostream.h>
3:
4:     int main()
5:     {
6:        cout << "Start >";
7:        cout.width(25);
8:        cout << 123 << "< End\n";
9:
10:       cout << "Start >";
11:       cout.width(25);
12:       cout << 123<< "< Next >";
13:       cout << 456 << "< End\n";
14:
15:       cout << "Start >";
16:       cout.width(4);
17:       cout << 123456 << "< End\n";
18:
19:     return 0;
20: }

Output: Start >                  123< End
Start >                  123< Next >456< End
Start >123456< End

Analysis: The first output, on lines 6-8, prints the number 123 within a field whose width is set to 25 on line 7. This is reflected in the first line of output.

The second line of output first prints the value 123 in the same field whose width is set to 25, and then prints the value 456. Note that 456 is printed in a field whose width is reset to just large enough; as stated, the effect of width() lasts only as long as the very next output.

The final output reflects that setting a width that is smaller than the output is exactly like setting a width that is just large enough.



Most Viewed Articles (in C++ )

Latest Articles (in C++)

Comment on this tutorial