Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
MahovIV
5 / 6 / 1
Регистрация: 17.09.2013
Сообщений: 337
#1

Собственные манипуляторы - C++

09.02.2014, 17:14. Просмотров 472. Ответов 4
Метки нет (Все метки)

Не компиллируется программа в DevC++. Написать программу с двумя своими манипуляторами. Один выводит сообщение, другой устанавливает шестнадцатеричный вывод и ширину поля 10. Программа выглядит вот так.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
 #include <iomanip>
 using namespace std;
 istream &prompt(istream &stream)
 {
cout<<"Vy vvely chislo\n";
 return stream;
 }
 ostream &setup(ostream &stream2)
 {
 stream.setf(ios::Ieft);
 stream << setw(10);
 return stream2;
 }
 int main()
 {
 int i;
 std::cin >>i;
 std::cout<<prompt;
 std::cout << setup << i;
 return 0;
 }
Помогите найти ошибку.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.02.2014, 17:14     Собственные манипуляторы
Посмотрите здесь:

Манипуляторы в С++ - C++
___________________Манипуляторы______________________ - endl_________________перевод строки - flush________________выгружает содержимое...

Залипающие манипуляторы - C++
У меня следующий вопрос. До каких пор эти манипуляторы (например setfill) залипают? Имеется в виду следующее. Допустим я в некоторой...

Манипуляторы ввода/вывода. - C++
Напишите программу которая будет просить ввести строку символов , после этого он печатает еѐ на экране 1) все буквы в нижнем регистре , ...

Что такое потоковые манипуляторы - C++
Как то удивительно странно все авторы обходят стороной вопрос, что такое потоковые манипуляторы, как то endl, setw, dec и так далее. Чем...

Манипуляторы ввода-вывода. Флаги - C++
Здравствуйте. Моя задача такова: нужно сделать программу, которая будет ждать ввода числа в 16-ричной, 8-ричной или 10-тичной системе...

Не понимаю манипуляторы. Как они работают? - C++
Здравствуйте. Столкнулся с непониманием манипуляторов. Вот код: #include &lt;cstdlib&gt; #include &lt;iostream&gt; using namespace std; ...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Бендерродригез
Сгибальщик
42 / 42 / 3
Регистрация: 18.05.2013
Сообщений: 220
Завершенные тесты: 1
09.02.2014, 17:43     Собственные манипуляторы #2
stream2 внутри функции, а не stream.
ios::left, а не ios::Left.
Уже объявлено using namespace std. Зачем std::?

prompt принимает istream&, а применяешь к ostream.
MahovIV
5 / 6 / 1
Регистрация: 17.09.2013
Сообщений: 337
09.02.2014, 17:49  [ТС]     Собственные манипуляторы #3
Цитата Сообщение от Бендерродригез Посмотреть сообщение
stream2 внутри функции, а не stream.
ios::left, а не ios::Left.
Уже объявлено using namespace std. Зачем std::?

prompt принимает istream&, а применяешь к ostream.
Исправил. Что ещё не так?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
 #include <iomanip>
 using namespace std;
 istream &prompt(istream &stream)
 {
cout<<"Vy vvely chislo\n";
 return stream;
 }
 ostream &setup(ostream &stream)
 {
 stream.setf(ios::left);
 stream << setw(10);
 return stream;
 }
 int main()
 {
 int i;
 cin >>i;
 cout<<prompt;
cout << setup << i;
 return 0;
 }
Бендерродригез
Сгибальщик
42 / 42 / 3
Регистрация: 18.05.2013
Сообщений: 220
Завершенные тесты: 1
09.02.2014, 17:51     Собственные манипуляторы #4
Первые 2 ошибки могла помочь выявить любая IDE.
Может пора начать использовать?

Добавлено через 47 секунд
Цитата Сообщение от Бендерродригез Посмотреть сообщение
prompt принимает istream&, а применяешь к ostream.
Вот это. Функция должна работать с ostream.
И строка stream.setf(ios::left); вообще не нужна.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.02.2014, 18:59     Собственные манипуляторы
Еще ссылки по теме:

Пользовательские флаги формата потока и манипуляторы - C++
Всем здравствуйте, возникла такая вот проблема: не понимаю как правильно создать свой флаг формата и правильно указать его для потока...

Манипуляторы и управляющие последовательности это одно и то же? - C++
Здравствуйте! Возник чисто теоретический вопрос новичка. Манипуляторы и управляющие последовательности это одно и то же?

Влияет ли манипуляторы hex,oct,dec на массив символов? - C++
Влияет ли манипуляторы hex,oct,dec на массив символов? есть unsigned char str; Ввожу и так cin &gt;&gt; hex &gt;&gt; str; и так cin &gt;&gt; str; ...

Собственные функции!!! - C++
надо прогу по заданию. Ну оочень надо!!! Ни чего сложного, просто времени не хватает!!! Запутался в методичках Лабы сделал заранее а с...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
MahovIV
5 / 6 / 1
Регистрация: 17.09.2013
Сообщений: 337
09.02.2014, 18:59  [ТС]     Собственные манипуляторы #5
Получилось, спасибо.
Yandex
Объявления
09.02.2014, 18:59     Собственные манипуляторы
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru