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

Посимвольный ввод - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 24, средняя оценка - 4.88
Dark2012
0 / 0 / 0
Регистрация: 03.12.2011
Сообщений: 43
11.12.2011, 01:24     Посимвольный ввод #1
Подскажите пожалуйста как можно осуществить посимвольный ввод с клавиатуры с учетом перехода на новую строку...

_getch устраивает всем, но он не переходит на новую строку при нажатии enter, а затирает ее
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.12.2011, 01:24     Посимвольный ввод
Посмотрите здесь:

C++ Посимвольный анализ и преобразование строк. Строки и числа
C++ Посимвольный ввод/ вывод
getline vs посимвольный ввод C++
C++ Посимвольный вывод
Как реализовать автоматический посимвольный вывод текста? C++
Работа с динамической памятью. Ошибка в функции getline через посимвольный ввод C++
C++ Посимвольный делитель файла
C++ Посимвольный файловый ввод

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
alkagolik
 Аватар для alkagolik
1510 / 616 / 79
Регистрация: 15.07.2011
Сообщений: 3,552
11.12.2011, 02:14     Посимвольный ввод #2
C
1
2
while ( ( ch = getchar() ) != EOF )
    putchar(ch);
Dark2012
0 / 0 / 0
Регистрация: 03.12.2011
Сообщений: 43
11.12.2011, 02:29  [ТС]     Посимвольный ввод #3
блин не очень понял как использовать...
в общем у меня такая ситуация - с клавы считывается инфа и заносится в динамический массив...
сейчас у меня вводятся любые символы и пробелы, а окончание ввода я формирую за счет нажатия на Esc

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
char* input(char** str, char simbol)
{
while (true)
    {
     simbol = _getch();
     if (simbol == 27)
       {
        simbol = '\0';
        cout << endl;
        break;
       }
     int len = strlen(*str);
     char *temp = new char[len + 2]; 
     strcpy(temp,*str);
     temp[len] = simbol;
     temp[len + 1] = '\0';
     delete [] *str;
     *str = temp;
    } 
return *str;
}
вот мне нужно чтобы было тоже самое только я еще мог переносить на новую строку..... и тогда вопрос - и каким образом мне определить признак конца ввода
Yandex
Объявления
11.12.2011, 02:29     Посимвольный ввод
Ответ Создать тему
Опции темы

Текущее время: 07:34. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru