| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Общие вопросы > Обработка символа забоя |
| Автор: student80 1.9.2010, 10:15 |
| Всем привет. Вот изучаю С по книжке. Только на одном задании никак не пойму, что делать. Нужно копировать ввод в вывод с обработкой символов. Все символы обрабатываю, кроме символа забоя - это который возвращает каретку на 1 символ влево. Так вот по этому символу у меня и вопросы. 1. Допустим, что вводится последовательность 12\b34, то на выходе должно получиться 134 или 1342? 2. Как вообще ввести этот символ забоя? Используется функция getchar(). 3. В веденных символах мне нужно заменить символ забоя какой-нибудь буквой, например X. Тогда при обработке символов мне нужно отменить ввод символа забоя и вывести вместо него X, но чтобы отменить символ забоя, каретку нужно передвинуть вправо. Есть такой символ, переводящий каретку вправо? |
| Автор: djamshud 1.9.2010, 12:03 | ||||||
| 1. 134 2. Ввести на stdin?
Это в никсах, в винде как-то похоже должно быть. 3. Ничего не надо делать с кареткой. Она "передвигается" позже - во время вывода в терминал. См. пример:
Добавлено через 36 секунд
|
| Автор: student80 1.9.2010, 13:11 | ||
вводится а когда у меня в консоли getchar() ждет ввода символов с клавиатуры, то как тогда символ вводить? сижу в линуксе через SSH |
| Автор: djamshud 1.9.2010, 13:19 |
| Да, я как-то и позабыл, что на stdin можно и с клавиатуры писать Фиг знает, но задача предполагет написание программы для конвеерной обработки текста, т.е.: smth1 | myprogram | smth2 Так что не стоит заморачиваться с вводом текста с клавиатуры. |
| Автор: student80 2.9.2010, 15:12 |
| Программа как раз предполагает ввод символов с клавиатуры Но это - не суть, я и через конвеерную обработку сделаю. xvr, с режимом raw вообще ничего ввести не могу и выйти из него не могу Символ обрабатывать научился. Всем спасибо. |