Почему endl нельзя писать в cin?

#include <iostream>
using namespace std;
int main(){
    int a, b, c;
    cin >> a >> b >> c >> endl; // 13 27 14
    if ( a > b and a > c){
        cout << "Smmalest is " << c;
    }
    return 0;
}

Ответы (1 шт):

Автор решения: Den

Это достаточно странный вопрос. Первое, что вам нужно понять, что такое поток ввода и вывода и как с ним работать. Что делает вообще сin >> a:

Она считывает поток ввода и благодаря перегрузке оператора >> говорит, что запиши мне это в переменную a. Теперь разберемся, что такое std::endl. Это функция, которая очищает поток и переводит курсор на новую строку, через escape последовательность '\n'.

Теперь если мы разберем ваш вопрос, вы спрашиваете почему функция из потока ввода не записывает мои данные в функцию, которая отвечает за отчистку потока вывода и перенос строки? (думаю ответ очевиден, что сам вопрос просто некорректен)

→ Ссылка