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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 15, средняя оценка - 4.67
ninja2
231 / 187 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
#1

Система ввода/вывода - C++

17.08.2013, 15:18. Просмотров 2052. Ответов 60
Метки нет (Все метки)

Здорова!

Есть задачка: "Напишите миниатюрную систему потокового ввода/вывода, предоставляющую классы istream, ostream, ifstream, ofstream, функции operator<<() и operator>>() для целых чисел и такие операции, как open() и close(), для файлов."

не знаю даже счего ее начать делать мб просто из них вызвать реальные std::istream ???
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.08.2013, 15:18
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Система ввода/вывода (C++):

Перегрузка вывода и ввода - C++
Здравствуйте прошу помочь ,написал программу в ней нужно перегрузить вывод и ввод ,как это можно осуществить??пробовал перегружать...

Потоки ввода-вывода - C++
1) Типы данных, для которых перегружены операторы форматного ввода-вывода.

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

Программа на С++ ввода/вывода - C++
Не могу понять где у меня ошибка в программе #include &lt;iostream.h&gt; int main (){ int i; cout &lt;&lt;&quot;Vvedite chislo&quot; ; cin...

Кодировка ввода и вывода - C++
В программу нужно ввести данные на русском языке, потом вывести #include &quot;stdafx.h&quot; using namespace std; const int num = 5; ...

Операторы ввода вывода - C++
Сама задача. Реализовать класс «бинарное дерево» рекурсивно реализовав в нем метод добавления элемента, а также (нерекурсивно) метод поиска...

60
0x10
2475 / 1648 / 247
Регистрация: 24.11.2012
Сообщений: 4,070
17.08.2013, 20:14 #31
Цитата Сообщение от ninja2 Посмотреть сообщение
не писать в стиле Си, а использовать СТЛ.
И постоянно умалчивается, что все это только после того, как натаскался на голых сях и написал свою stl.
0
ninja2
231 / 187 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
17.08.2013, 20:16  [ТС] #32
Цитата Сообщение от Nameless One Посмотреть сообщение
ninja2, твои истории всё интереснее и интереснее, продолжай, пожалуйста.
Спосибо но я это не просто так говорю, хочу истину уловить.
0
Nameless One
Эксперт С++
5775 / 3425 / 255
Регистрация: 08.02.2010
Сообщений: 7,448
17.08.2013, 20:17 #33
Цитата Сообщение от 0x10 Посмотреть сообщение
И постоянно умалчивается, что все это только после того, как натаскался на голых сях и написал свою stl.
Кто написал?
0
0x10
2475 / 1648 / 247
Регистрация: 24.11.2012
Сообщений: 4,070
17.08.2013, 20:18 #34
Цитата Сообщение от Nameless One Посмотреть сообщение
Кто написал?
Подопытный Студент.
0
Nameless One
Эксперт С++
5775 / 3425 / 255
Регистрация: 08.02.2010
Сообщений: 7,448
17.08.2013, 20:19 #35
0x10, извини, я тупой и намёков не понимаю.
0
0x10
2475 / 1648 / 247
Регистрация: 24.11.2012
Сообщений: 4,070
17.08.2013, 20:20 #36
Nameless One, Мысль проста: прежде чем использовать stl, нужно самому написать ее, чтобы понимать что внутри.
0
ninja2
231 / 187 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
17.08.2013, 20:20  [ТС] #37
Цитата Сообщение от 0x10 Посмотреть сообщение
И постоянно умалчивается, что все это только после того, как натаскался на голых сях и написал свою stl.
Ну просто когда свою СТЛ строил там некоторые , ну я не знаю как сказать, методики что ли или принципы программирования изучаешь или практикуешь, Та даже по моему во введении "как учить С++" или не помню точно говорится что после того как построишь свою СТЛ будешь обладать навыками очень нужными, ну хз что то я их не заметил, конечно я строил кое как и не всю стл, а так некоторые классы.
0
Croessmah
17.08.2013, 20:21
  #38

Не по теме:

Цитата Сообщение от Nameless One Посмотреть сообщение
Кто написал?
Ну согласитесь - работать с тем же вектором намного легче, если знаешь хотя бы примерно принцип его устройства. А когда без знаний просто суешься, то получаешь то не выделенную память, то не понятные копирования, то инвалидацию итераторов и т.д.

0
ninja2
231 / 187 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
17.08.2013, 20:23  [ТС] #39
Кстати в главе "как учить С++" хорошо объясняется что и как учить, там говорится что не сильно стоит заморачиватся на синтаксисе, это я так понял, языка, а нужно принципы изучать. Там все смутно написано.
0
0x10
2475 / 1648 / 247
Регистрация: 24.11.2012
Сообщений: 4,070
17.08.2013, 20:24 #40
Цитата Сообщение от ninja2 Посмотреть сообщение
после того как построишь свою СТЛ будешь обладать навыками очень нужными, ну хз что то я их не заметил
Тема про вектор от тебя была где-то... Месяца три-четыре назад. Да, за это время обязано было случиться просветление, я ума не приложу что пошло не так.
0
ninja2
231 / 187 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
17.08.2013, 20:26  [ТС] #41
Цитата Сообщение от Croessmah Посмотреть сообщение
Ну согласитесь - работать с тем же вектором намного легче, если знаешь хотя бы примерно принцип его устройства. А когда без знаний просто суешься, то получаешь то не выделенную память, то не понятные копирования, то инвалидацию итераторов и т.д.
Да оно то мб и хорошо, а времени на его написание скоко затрачивается? Я первый раз когда его в Дейтелах не писал, а просто набрал было тяжело разобраться. А потом сам уже написал, раза три, так первый раз тяжело было, а щас бы быстро написал бы без проблем, наверно всетаки скил повышается, просто незаметно.
0
Discoverer
16 / 14 / 2
Регистрация: 05.07.2013
Сообщений: 27
17.08.2013, 20:29 #42
Цитата Сообщение от ninja2 Посмотреть сообщение
Кстати в главе "как учить С++" хорошо объясняется что и как учить, там говорится что не сильно стоит заморачиватся на синтаксисе, это я так понял, языка, а нужно принципы изучать. Там все смутно написано.

Не по теме:

Вы уж определитесь, что ли..

0
ninja2
231 / 187 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
17.08.2013, 20:32  [ТС] #43
Цитата Сообщение от 0x10 Посмотреть сообщение
Тема про вектор от тебя была где-то... Месяца три-четыре назад. Да, за это время обязано было случиться просветление, я ума не приложу что пошло не так.
Да вектор я понял, меня от шаблоны опустили. Шаблоны тяжело было строить typedef использовать и всю фигню. Iterator свой было тяжело строить, да эти шаблоны не сильно разобрал, шаблоны тяжелая тема. Forever я с него порожался как он шарит шаблоны хорошо.

Добавлено через 3 минуты
Цитата Сообщение от Discoverer Посмотреть сообщение
Не по теме:
Вы уж определитесь, что ли..
Что написано смысл понял, практиковать, практиковать, чем больше занимаешься тем больше шариш. время затраченное на обучение прямо пропорционально знаниям и навыкам. Там это было написано. И что за один день фиг его выучишь. И что знания должны устаканится, короче время должно пройти что бы знания усвоились. Интересно он пишет на трех листах. Тут бывает спрашивают новички как С++ учить как учить.
0
ForEveR
В астрале
Эксперт С++
7980 / 4739 / 321
Регистрация: 24.06.2010
Сообщений: 10,543
Завершенные тесты: 3
17.08.2013, 23:47 #44
Цитата Сообщение от 0x10 Посмотреть сообщение
Смысл переписывания stl как раз в том, чтобы не использовать stl. Можно использовать сишные функции или системное api, по вкусу.
Если делать эту задачу с целью понять, как устроено это в STL придется делать очень много, т.к. система ввода/вывода в С++ довольно запутанная, честно говоря.
0
ninja2
231 / 187 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
20.08.2013, 09:55  [ТС] #45
Цитата Сообщение от ForEveR Посмотреть сообщение
Если делать эту задачу с целью понять, как устроено это в STL придется делать очень много, т.к. система ввода/вывода в С++ довольно запутанная, честно говоря.
Я думаю просто сделать мб не так как в СТЛ, просто создам 4 класса: ifstream и ofstream для работы с файловыми потоками, istreram и ostream для работы просто с потоками ввода вывода. И функции 4 которые просят сделаю, давалю еще там для примера пару функций, не все, в каждый класс что бы было понятно как остальные добавлять.
Если делать все так как в СТЛ с basic_i(o)stream ами и со всеми функциями, то времени затратиться много.

Добавлено через 48 минут
От два класса создал, токо оно как то неправильно работает без остановки:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#include <stdio.h>
 
class istream
{
public:
    //конструктор
    istream(){}
    char get(){return getc(stdin);}
    istream& operator>>(char* s){gets(s);return *this;}
    istream& operator>>(char c){c=getc(stdin);return *this;}
};
 
class ostream
{
public:
    ostream(){}
    ostream& operator<<(char* s){puts(s);return *this;}
    ostream& operator<<(char c){putc(c,stdout);return *this;}
};
 
int main()
{
    istream is;
    ostream os;
    char c;
    os <<"Vvedite cimvol ... ";
    c=is.get();
    os <<"c= "<<c<<"\n";
 
    char string[256];
    os <<"Vvedite string ... ";
    is >>string;//считываем в string.
    os <<"string= "<<string<<'\n';
 
    return 0;
}
Остановки нету что бы ввести строку???

Добавлено через 4 минуты
Исправил надо scanf и printf использовать и для файлов наверно fscanf и fprintf щас попробую.
0
20.08.2013, 09:55
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.08.2013, 09:55
Привет! Вот еще темы с ответами:

Операции ввода и вывода С++ - C++
Необходимо продемонстрировать операции &lt;&lt; и &gt;&gt; для ввода и вывода типов char, int, float, double для какого-либо значения

Операторы ввода/вывода - C++
Всем привет! Было задание: сделать сложение двух окружностей, н.р. int main() { Circle c1(1,3,3); Circle c2(1,4,4); ...

Переопределение ввода / вывода - C++
Структура «абонент телефонной сети» содержит следующие поля: 1) фамилия (строка), 2) ули-ца, 3) дом, 4) квартира, 5) тел. номер....

Операции ввода-вывода - C++
Осуществить вывод в текстовый файл результата сложения двух целочисленных значений, передаваемых в качестве аргументов командной строки....


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

Или воспользуйтесь поиском по форуму:
45
Ответ Создать тему
Опции темы

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