iostream — бібліотека і відповідний заголовний файл, які використовується для організації введення-виведення в мові програмування C++. Він включений в стандартну бібліотеку C++. Назва утворена від (потік введення-виведення). У мові C++ і її попереднику, мові програмування Сі, немає вбудованого вводу-виводу. Натомість використовується бібліотека iostream, яка керує вводом-виводом, як і stdio.h у Ci. iostream використовує об'єкти cin, cout, cerr і clog для передачі інформації між стандартними потоками введення, виведення, помилок (безбуферний) і помилок (буферний) відповідно. Будучи частиною стандартної бібліотеки C++, ці об'єкти також є частиною стандартного простору імен — std.
Приклад Hello, world Наприклад, програма Hello world може бути представлена: #include <iostream> using std::cout; using std::endl;
int main() { cout<<"Hello World!"<<endl; return 0; } Програма виведе «Hello, world!» і переведе рядок (std::endl).
Форматування виводу Функції width(int x) мінімальне число знаків до наступного виводуfill(char x) встановлює символ-заповнювач і повертає попередній символ-заповнювач. За умовчанням як символ-заповнювач використовується пропускprecision(int x) встановлює число значущих знаків для чисел з плаваючою крапкою
Приклад: cout.width(10); cout << "ten" << "four" << "four";
Маніпулятори
endl переведення рядкаflush вивантажує вміст буфера в потікdec міняє формат виведення числа на десятковийoct міняє формат виведення числа на вісімковийhex міняє формат виведення числа на шістнадцядковийws витягує і видаляє символи порожніх проміжків з потокуshowpos показує '+' перед додатними числамиshowpoint показує десяткову крапкуnoshowpoint приховує десяткову крапку
Критика Деякі середовища не забезпечують розподілювального виконання C++ бібліотек. Приклади включають вбудовані системи і системи Windows, що керують програмами, побудованими з MinGW. Під цими системами стандартна бібліотека C++ повинна бути статично пов'язана з програмою, що збільшує розмір програми, або поширювати стандартну бібліотеку разом з програмою.
Деякі реалізації стандартної бібліотеки C++ мають істотні обсяги мертвого коду. Наприклад, GNU libstdc++ автоматично конструює локаль, будуючи ostream, навіть якщо програма ніколи не використовує ніяких типів (дата, час або гроші), на які впливає локальGNU libstdc++ source code, bits/ios_base.h, і статично зв'язана програма «hello, world», яка використовує GNU libstdc++ <iostream>, видає виконуваний файл значно більший, ніж еквівалентна програма, яка використовує <cstdio>. Але існують часткові імплементації стандартної бібліотеки C++, спроектовані для обмежених в розмірі середовищ; їхній <iostream> може вилучити опціональний код, якого не потребує програма, такий як підтримка локалі.
Виноски
Посилання C++ для початківців. Бібліотека iostream <iostream> або <iostream.h>, Що правильніше?