Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.91
Infection13
0 / 0 / 1
Регистрация: 09.12.2009
Сообщений: 5
#1

Разбиение на лексемы - C++

24.12.2009, 20:41. Просмотров 1566. Ответов 1

Нужно написать программу, запрашивающую строку текста, разбивающую ее на лексемы и выводящую лексемы в обратном порядке. Желательно си, не си++..
Помогите пожалуйста! заранее огрономнешее спасибо..
http://www.cyberforum.ru/cpp-beginners/thread1919073.html
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.12.2009, 20:41
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Разбиение на лексемы (C++):

Есть ли в классе строк или в алгоритмах разбиение строку на лексемы?
Собственно сабж, как говорится. Хотел переписать программу, которую делал с Си...

Разделение строки на лексемы с strtok, проверка длины каждой лексемы (выдает ошибку)
я именно вот разделяю строку на лексемы и хочу проверить длину каждой лексемы,...

Как разбить на лексемы
Не могу понять как разбить на лексемы, помагите если не сложно Вот участок...

Разбор текста на лексемы
Пытаюсь написать программу, которая будет разбирать текст исходного кода на...

String разбить на лексемы
есть пример которий записаний в string str1=("25+69-65*85/58+65*(12+36)+36")...

1
Gravity
569 / 563 / 64
Регистрация: 29.01.2009
Сообщений: 1,274
24.12.2009, 20:48 #2
Лучший ответ Сообщение было отмечено как решение

Решение

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <stdio.h>
#include <string.h>
#define MAXLEX 1024
int main(void)
{
    char s[4096], *p, *lexs[MAXLEX];
    int i;
 
    printf("Enter string: ");
    if(fgets(s, sizeof(s), stdin) == NULL || *s == '\n')
        return 1;
    if(p = strrchr(s, '\n'))
        *p = '\0';
 
    for(i = 0, p = s; i < MAXLEX && (p = strtok(p, " -(){}:;,.!?")); p = NULL, i++)
        lexs[i] = strdup(p);
    while(i--)
        printf("%s\n", lexs[i]);
    return 0;
}
4
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.12.2009, 20:48
Привет! Вот еще темы с решениями:

Дополнение к разбивке на лексемы
В общем, есть простенький декодер Морзе, проблема лишь в том, что он режется на...

Ошибка возле неожиданной лексемы
Здравствуйте,нуждаюсь в помощи.Нам в вузе выдали программу,по образцу которой...

Разделить символьный массив на лексемы
Нужно разделить символьный массив на лексемы. Новая лексема - от и до мат....

Разбить строки на отдельные лексемы
Прошу помощи для &quot;особо одаренных&quot;)). Учусь на программиста заочно (хотя в...


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

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

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