Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.12.2013, 16:33   #1
Posterior
Новичок
Джуниор
 
Регистрация: 21.12.2013
Сообщений: 2
По умолчанию Ну очень большая строка

Нам надо прочитать поток который, представляет из себя строку, длиной в 10^7 символов. Так как в задаче нам ограниченно использование памяти, инициализировать как строку, так и массив символов мы не может, потому что мы тогда нарушим предел. Идея такая. Я читаю символ за символом пока
что-то ещё осталось, то есть пока мы не прочитали все символы из потока. Проблема в том что мне не известна длинна строки, так как я её не могу инициализировать. Помогите мне пожалуйста с написанием того самого условия (пока поток не кончился). Будем считать что поток заканчивается после первого его ввода. Я делаю так:

char x;
for (; условие; )
{
cin >> x; // запрашиваем следующий символ
..... // что-то делаем с этим элементом
}

надо написать условие.

Последний раз редактировалось Posterior; 21.12.2013 в 17:16.
Posterior вне форума Ответить с цитированием
Старый 21.12.2013, 18:19   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Смотря что ты хочешь сделать потом с этой строкой. От этого зависит как стоит читать.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 21.12.2013, 19:36   #3
Posterior
Новичок
Джуниор
 
Регистрация: 21.12.2013
Сообщений: 2
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Смотря что ты хочешь сделать потом с этой строкой. От этого зависит как стоит читать.
Я ничего не хочу делать с этой строкой, мне вообще не нужна строка. Я работаю только с символами, по-отдельности.
Posterior вне форума Ответить с цитированием
Старый 21.12.2013, 21:29   #4
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,331
По умолчанию

Прочитайте про std::ios::eof()
waleri вне форума Ответить с цитированием
Старый 22.12.2013, 00:43   #5
Smitt&Wesson
Старожил
 
Аватар для Smitt&Wesson
 
Регистрация: 31.05.2010
Сообщений: 13,543
По умолчанию

Цитата:
известна длинна строки
А, я-то думал... А но, как оказалось...
Цитата:
про std::ios::eof()
Толко не нужно мне (и молодёжи) нести про std. Гад, от Асма остался. Распределение памяти, не саммое хорошее. Это из регистра B. Вообще - отстой!
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder
Smitt&Wesson вне форума Ответить с цитированием
Старый 22.12.2013, 11:08   #6
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,331
По умолчанию

Молодеж задавала вопрос про cin, молодеж не спрашивала "как лучше это сделать". А где в ios есть распределение памяти я вообще не в курсе.
waleri вне форума Ответить с цитированием
Старый 22.12.2013, 11:41   #7
Smitt&Wesson
Старожил
 
Аватар для Smitt&Wesson
 
Регистрация: 31.05.2010
Сообщений: 13,543
По умолчанию

Цитата:
Сообщение от waleri Посмотреть сообщение
Молодеж задавала вопрос про cin, молодеж не спрашивала "как лучше это сделать". А где в ios есть распределение памяти я вообще не в курсе.
Кстати, про ios, я тоже не в курсе. Работает и ладушки. Мы создаём, люди пользуются... Дофига знаешь людей, которые могут разобраться, хотя-бы в интерфесах? Про коды, я вообще молчу .
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder
Smitt&Wesson вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Очень длинная строка loader159 Общие вопросы C/C++ 3 08.03.2012 15:08
Большая просьба помочь с задачами на двумерные массивы. Нужно очень срочно - до утра! tohkaRu Паскаль, Turbo Pascal, PascalABC.NET 0 03.12.2008 23:43