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

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

Войти
Регистрация
Восстановить пароль
 
taras atavin
3888 / 1762 / 92
Регистрация: 24.11.2009
Сообщений: 27,565
#1

Стримовые строки - C++

15.03.2010, 12:45. Просмотров 506. Ответов 8
Метки нет (Все метки)

Есть стрим, например,
C++
1
cin
. Надо узнать число символов от последнего ведённого до конца строки.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.03.2010, 12:45
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Стримовые строки (C++):

Сгенерировать две произвольные строки и определить, является ли какое-либо слово первой строки частью второй строки - C++
Сгенерировать две произвольные строки и определить, является ли какое-либо слово первой строки частью второй строки. 1. Я дуб дубом,даже...

Добавить строки, начиная со строки К1 и до строки К2, в динамический массив строк - C++
Есть динамический массив строк. Заполняется, т.е. размер его уже известен будет. Но дальше нужно сделать задание: "Добавить строки, начиная...

Удалить строки динамической матрицы, начиная со строки К1 и до строки К2 - C++
Сформировать динамический двумерный массив, заполнить его случайными числами и удалить строки, начиная со строки К1 и до строки К2 вот...

Ввести две символьных строки. Выполнить поиск второй строки в первой и вывести номер позиции первой строки, с которой вторая строка содер-жится в ней - C++
Ввести две символьных строки. Выполнить поиск второй строки в первой и вывести номер позиции первой строки, с которой вторая строка...

Даны три строки. Определить можно ли из символов третьей строки получить первую и вторую строки - Java
Помогите пожалуйста! 1)Даны три строки. Определить можно ли из символов третьей строки получить первую и вторую строки. 2)Дана...

Ввести строки и через n символов первой строки вставить вторую строку, и так до конца строки - C++ Builder
Помогите исправить баг задача состоит в следующем :ввести строку и простроку тоесть две строки и надо через (n) символов первой строки...

8
CheshireCat
Эксперт С++
2903 / 1252 / 81
Регистрация: 27.05.2008
Сообщений: 3,437
15.03.2010, 14:29 #2
В общем случае - никак. Например, для cin - пользователь нажимает кнопки на клавиатуре.... и когда ему заблагорассудится нажать ENTER - это заранее программно определить невозможно.
0
outoftime
║XLR8║
755 / 655 / 88
Регистрация: 25.07.2009
Сообщений: 3,289
Записей в блоге: 5
15.03.2010, 18:49 #3
CheshireCat, а можно как-то подключится к буферу, в который пользователь "набирает текст" до нажание на ввод??
0
CheshireCat
Эксперт С++
2903 / 1252 / 81
Регистрация: 27.05.2008
Сообщений: 3,437
15.03.2010, 22:57 #4
outoftime, тут засада в том, что даже подключение к этому буферу не дает рррровно никакой информации от будущих событиях - таких, как нажатие ENTER....... поэтому "узнать число символов от последнего введенного до конца строки" - т.е. от достоверно известного события ввода последнего символа до когда-нибудь будущего события нажатия ENTER - невозможно. Невозможно достоверно предсказать будущее, короче.
0
outoftime
║XLR8║
755 / 655 / 88
Регистрация: 25.07.2009
Сообщений: 3,289
Записей в блоге: 5
15.03.2010, 23:06 #5
CheshireCat, ок, судя по всему вы меня не поняли. Не знаю правда можно ли так сделать, суть в том, что-бы на событие нажатия любой клавиши заново пересчитыватт длину строки для "буфера", тогда при изменении строки до нажатия на ВВОД, мы сможем сказать текущую длину строки, или другими словами количество символов, введенных на данный момент.

Каксательно формы на си-шарпе это легко, а вот что делать с консолью на с++..

Добавлено через 2 минуты
Еще так можно обьяснить: текст, который мы вводим консоль где-то хранится до нажатия на ВВОД, если найти это "где-то" и смотреть что там лежит может получиться
0
Manjak
269 / 175 / 7
Регистрация: 12.03.2010
Сообщений: 494
16.03.2010, 01:17 #6
А от количества знакомест в строке в текстовом режиме отнять номер текущего символа не проще?
0
taras atavin
3888 / 1762 / 92
Регистрация: 24.11.2009
Сообщений: 27,565
16.03.2010, 05:05  [ТС] #7
Цитата Сообщение от CheshireCat Посмотреть сообщение
В общем случае - никак. Например, для cin - пользователь нажимает кнопки на клавиатуре.... и когда ему заблагорассудится нажать ENTER - это заранее программно определить невозможно.
Не заранее. По условию задачи Enter уже нажат. Где? Под введённым символом понимаю не набранный на клаве, а прочитанный из её потока.

Добавлено через 3 минуты
Цитата Сообщение от Manjak Посмотреть сообщение
А от количества знакомест в строке в текстовом режиме отнять номер текущего символа не проще?
Где взять обе величины?
0
Manjak
269 / 175 / 7
Регистрация: 12.03.2010
Сообщений: 494
16.03.2010, 15:16 #8
Экран в текстовом режиме разделен на 25 строк и 80 столбцов. А длину уже введенной строки сосчитать не сложно.
0
taras atavin
3888 / 1762 / 92
Регистрация: 24.11.2009
Сообщений: 27,565
17.03.2010, 06:18  [ТС] #9
Проблема решена в изменённой поставновке: есть поток, в нём нажата enter, прочитаны символы, надо определить, нажата ли enter сразу после последнего прочитанного символа. Этот вариант мне подошел.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.03.2010, 06:18
Привет! Вот еще темы с ответами:

Слить две строки, вставив символы одной строки между символами другой строки - Pascal
Строка a из n символов лексикографически меньше строки b из n символов, если существует такой индекс j, что aj < bj, а для всех i < j ai =...

Сравнить строки, первый несовпадающий элемент строки-приемника записать в регистр AL, строки-источника - в DL - Assembler
Помогите написать программу на ассемблерене совсем еще разобрался с этим задание: Ввести с клавиатуры две строки одноразрядных...

Определить длину строки. Если длина строки >6, удалить часть строки в { } скобках. - Turbo Pascal
Ввести с клавиатуры строку символов. Признак окончания ввода строки – нажатие клавиши "Ввод". Программа должна определить длину введенной...

Строки. Определить длину введенной строки, если длина кратна 4, то первая часть строки меняется местами со второй - Turbo Pascal
Ввести с клавиатуры строку символов.признак окончания ввода строки-нажатие клавиши ввод.Программа должна определить длину введенной строки...


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

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

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