clgunzl Ответов: 2

Не могу понять, почему endl убивает мой маленький кусочек кода


#include <iostream>
использование пространства имен std;

тап_п(){
int a;
int b;

//cin >> a >> endl;
//Кин &ГТ;> б &ГТ;&ГТ; епси;

возвращает 0;
}

Что я уже пробовал:

Я не понимаю, почему эндл не работает. если я не могу понять, почему endl вызывает этот сбой, то я могу также уйти, пока я впереди, так как это своего рода ошибка нарушителя сделки, которую нельзя понять

Stefan_Lang

После того как CPallini ответил на ваш вопрос, я дам вам более общий совет: существует множество информации о программировании на C++, которую можно найти в интернете, просто одна поисковая система убежала. Специально для стандартных функций, таких как iostream, чрезвычайно легко найти не только полную документацию по каждой функции и элементу, но и примеры кода.

Если вы собираетесь так легко отказаться от проблем, которые могли бы решить сами с минимальными усилиями, вы не продвинетесь далеко ни в одном языке программирования. И C++ требует больше поиска такого рода, чем любой другой язык, который я знаю.

2 Ответов

Рейтинг:
2

Greg Utas

endl используется только с cout, нет cin Просто удалите каждый из них . ">> endl- и ваш код должен гласить два intс.


Рейтинг:
0

CPallini

Попытка компилировать с помощью C++ ваш (раскомментированный) код, я получаю

error: no match for ‘operator>>’ (operand types are ‘std::basic_istream<char>::__istream_type {aka std::basic_istream<char>}’ and ‘<unresolved overloaded function type>’) [...]

Это намек на то, что endl функция (да, это функция) использование не подходит в вашей линии.
Причину можно найти, прочитав следующие страницы
епси - Справочник по c++ [^]
ostream::operator<< - ссылка на C++ [^]

Короче говоря, endl вставьте новую строку в поле выходной поток (и смывает ее). С cin это входной поток- жалуется компилятор.


Stefan_Lang

Мой 5.

CPallini

Спасибо, Стефан.