| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Центр помощи > [C(желательно)&С++]Анализ данных строки. |
| Автор: karpov 18.5.2007, 13:50 |
| В процессе решения задачи у меня появилась необходимость анализа данных строки введенной пользователем. 1)Т е пользователь вводит набор символов жмет энтер., он считывается в формате строки, а затем программа в соответсвтие с кодом каждого символа должна проводить разные операции. с вводом все понятно, с операциями тоже, а вот как преодразовать строку в набор кодов символов(чтобы потом уже с ними сравнивать) не знаю(( Все это будет на си. Заранее спасибо. |
| Автор: Anikmar 18.5.2007, 13:54 |
| Лично я не понял вопроса. Символ в строке - это либо символ либо его код (это одно и то же) char *s = "ABCDEF"; s[1] содержит символ 'B' , он же является его кодом: int Code = s[1]; |
| Автор: karpov 18.5.2007, 14:00 |
| Я имею в виду что. Вот пользователь ввел строку. нажал энтер. Соответственно она считалась как строка. Как мне перевести эту строку в набор символов, чтобы затем работать с каждым из них (в частности проводить с ними различные действия в зависимости от символа)? |
| Автор: Anikmar 18.5.2007, 14:20 |
| А как пользователь ввел строку? В массив символов или в тип string? Покажите, как вы вводите строку |
| Автор: karpov 18.5.2007, 14:30 |
| scanf("%s", &st); - в принципе будет так. Кстати это вариант ввести посимвольно. Только как это сделать если мне не известна длина того что будет вводить пользователь? Указать в матрице куда я буду считывать определенный запас по ячейкам? |
| Автор: Anikmar 18.5.2007, 14:40 | ||
И какого типа планируется переменная s? В данном случае, если не шибко переживать о переполнении можно сделать так:
В таком варианте максимальная длина строки будет 1023 символа |
| Автор: karpov 18.5.2007, 14:51 | ||||
Char и возмоно int. Спасибо. Сейчас буду всю свою задачу полностью скомпоновывать и доделывать-)
|