← Patterns

Write data in columns

123456789101112#include <iostream> #include <iomanip> int main() { std::cout << std::left << std::setw(12) << "John Smith" << std::right << std::setw(3) << 23 << '\n'; std::cout << std::left << std::setw(12) << "Sam Brown" << std::right << std::setw(3) << 8 << '\n'; }

This pattern is licensed under the CC0 Public Domain Dedication.

Requires c++98 or newer.

Intent

Align data in columns when writing to an output stream.

Description

On lines 6–11, we write two lines of data to an output stream. std::cout is used as the example stream.

We use I/O manipulators to align the data in columns. The std::setw manipulator sets the width of a column, while std::left and std::right set the alignment of the written value within that column. For example, on line 6, we write the name “John Smith” to a column of width 12 and align it to the left of the column.

Contributors

Last Updated

09 December 2017

Source

Fork this pattern on GitHub

Share

Follow Lee on X/Twitter - Father, Husband, Serial builder creating AI, crypto, games & web tools. We are friends :) AI Will Come To Life!

Check out: eBank.nz (Art Generator) | Netwrck.com (AI Tools) | Text-Generator.io (AI API) | BitBank.nz (Crypto AI) | ReadingTime (Kids Reading) | RewordGame | BigMultiplayerChess | WebFiddle | How.nz | Helix AI Assistant