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

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

Войти
Регистрация
Восстановить пароль
 
Kirino Kousaka
0 / 0 / 0
Регистрация: 08.07.2015
Сообщений: 2
#1

Реализовать собственный cin - C++

08.07.2015, 14:11. Просмотров 260. Ответов 5
Метки нет (Все метки)

Я короче хочу реализовать собственный cin. Просто оно медленно работает. И в этом проблема.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
typedef long long ll;
 
struct Cin{
    void operator >>(ll &x){
        scanf("%lld", &x);
    }
}Cin;
 
struct Cout{
    void operator <<(ll x){
        printf("%lld", x);
    }
}Cout;
 
ll a, b;
Cin >> a >> b;
Cout << a + b;
Но выдает ошибку компиляций. Помогите
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.07.2015, 14:11
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Реализовать собственный cin (C++):

Защита от дурака при вводе текста с помощью: cin.get cin.clear cin.sync - C++
Доброго времени суток. На С++ учусь с недавних пор. Имеется стандартная &quot;защита от дурака&quot; на ввод. Не пойму предназначение cin.get() !=...

Объясните пожалуйста как работают cin.good(), cin.sync(), cin.clear() - C++
Такая проблема: сдаю в вуза лабораторные по программированию, писал все сам, до этого c++ не изучал, поэтому возникали некоторые проблемы....

Реализовать собственный аналог контейнера std::map - C++
Нужно реализовать собственный контейнер map. Подскажите как это вообще сделать, ибо совсем не представляю.

Как реализовать остановку цикла с условием cin >> a? - C++
Здравствуйте. Программа пишет не более двух элементов в вектор, после нажатия Enter - их выводит. Как сделать, чтобы она выводила их...

Метод getline(cin, m) не срабатывает без cin.ignore() / Ревью кода - C++
Почему в моем случае getline(cin, m) не срабатывает без cin.ignore() ? Если по коду есть какие-нибудь замечания, то просьба написать что не...

Продемонстрировать различие между вводом с помощью cin.Get и cin.Getline с тремя параметрами - C++
Нужна помощь. Задача продемонстрировать различие между вводом с помощью cin.get и cin.getline с тремя параметрами, как из потока достать...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
DrOffset
7147 / 4288 / 966
Регистрация: 30.01.2014
Сообщений: 7,091
08.07.2015, 14:40 #2
Kirino Kousaka,
Во-первых (и с выводом аналогично)
C++
1
2
3
4
Cin & operator >>(ll &x){
        scanf("%lld", &x);
        return *this;
}
Во-вторых, незачем класс и переменную называть одинаково.
0
tnk500
113 / 117 / 25
Регистрация: 25.08.2012
Сообщений: 1,283
Завершенные тесты: 3
08.07.2015, 14:45 #3
Kirino Kousaka, если проблема в медленной работе, просто вызовите в начале main() функцию ios::sync_with_stdio(0); Она отменяет синхронизацию потоков iostream с соответствующими ей потоками Си.
0
Kirino Kousaka
0 / 0 / 0
Регистрация: 08.07.2015
Сообщений: 2
08.07.2015, 22:50  [ТС] #4
Я знаю это, полюбому на некоторых задачах TLE.
0
Croessmah
Эксперт CЭксперт С++
13221 / 7493 / 845
Регистрация: 27.09.2012
Сообщений: 18,413
Записей в блоге: 3
Завершенные тесты: 1
08.07.2015, 22:53 #5
Цитата Сообщение от Kirino Kousaka Посмотреть сообщение
Просто оно медленно работает.
само собой. Вы чего ждали?
0
hoggy
Нарушитель
6581 / 2762 / 476
Регистрация: 15.11.2014
Сообщений: 6,105
Завершенные тесты: 1
08.07.2015, 23:42 #6
Цитата Сообщение от Kirino Kousaka Посмотреть сообщение
Я короче хочу реализовать собственный cin. Просто оно медленно работает
1.
это глупо, если речь о вводе пользователя.
поскольку, для машины реакция человека сопоставима с вечностью.

2.
если речь о программном комплексе с перенаправлением ввода/вывода, то вы можете
отключить синхронизацию с сишными потоками



/зы: без синхронизации с сишными потоками, приплюсные работают быстрее сишных.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.07.2015, 23:42
Привет! Вот еще темы с ответами:

Для чего в код вводится cin.ignore после того, как cin>> уже сработало? - C++
Доброго времени суток! Просматриваю простой код. Вводится строка типа string: фунты и дюймы Затем значения переводится в типы int и...

хочу попробовать всунуть "for (int j=0; j<5; j++)" в cin. Как это можно реализовать? - C++
int main() { const int Mass =5; int a; for (int j=0; j&lt;5; j++) { cout &lt;&lt; &quot;-&gt;&quot;; cin &gt;&gt; a; ...

Объект cin и его метод cin.get() - C++
Вот код программы: #include &lt;iostream.h&gt; #pragma hdrstop ...

Отличие функции cin.get и cin.getline - C++
Добрый день! Изучаю функции get и getline, сказано, что они отличаются тем, что функция get считывает символ разрыва строк и оставляет...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
08.07.2015, 23:42
Ответ Создать тему
Опции темы

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