<iostream> у C++

#include <iostream> — це заголовковий файл стандартної бібліотеки C++, який забезпечує потокове введення та виведення даних через консоль.

Він містить об’єкти для роботи з потоками:

🔹 Що таке потік (stream)?

Потік — це послідовність символів, яка передається від джерела до приймача.

1️⃣ cout — стандартний потік виводу

#include <iostream>
using namespace std;

int main() {
    cout << "Hello, world!" << endl;
}

Оператор << — оператор вставки в потік.

cout << "Число: " << 10;

Можна виводити кілька значень підряд.

2️⃣ cin — стандартний потік введення

int age;
cin >> age;

Оператор >> — оператор вилучення з потоку.

int a, b;
cin >> a >> b;

3️⃣ endl — перехід на новий рядок

cout << "Hello" << endl;
Робить дві речі:

Якщо потрібен лише перехід на новий рядок без очищення буфера:

cout << "Hello\n";

4️⃣ cerr — потік помилок

cerr << "Помилка!" << endl;

Не буферизується — повідомлення з’являється одразу.

5️⃣ clog — потік логування

clog << "Лог повідомлення" << endl;

Буферизується. Використовується для журналювання.

🔹 Як це працює всередині?

У <iostream> визначені класи:

Об’єкти cin, cout, cerr, clog — глобальні екземпляри цих класів.

🔹 Приклад повної програми

#include <iostream>
using namespace std;

int main() {
    string name;
    int age;

    cout << "Введіть ім'я: ";
    cin >> name;

    cout << "Введіть вік: ";
    cin >> age;

    cout << "Привіт, " << name 
         << "! Тобі " << age << " років." << endl;

    return 0;
}

🔹 Переваги <iostream>

🔹 Важливо знати

1. Простір імен std

std::cout << "Hello";

або

using namespace std;

2. Буферизація

Вивід у cout буферизується — дані можуть не з’явитися одразу.

3. Робота з рядками з пробілами

string name;
getline(cin, name);

📌 Коли використовують <iostream>

Семестр №1
Наші партнери