lord_raven_lee Ответов: 1

Как получить токен для парсера на языке Си


У меня возникли проблемы с пониманием того, как парсер использует current_token, чтобы начать тестирование грамматики.
Я не знаю, правильно ли я использую current_token при разборе и сопоставлении, и если это просто то, что я не печатаю его правильно. Или если он не настроен правильно, чтобы проверить грамматику.
Любая помощь будет оценена по достоинству.

Поскольку проект довольно большой, у меня есть сайт git прямо здесь, в моем коде.
GitHub - lordravenlee/компилятор[^]

Что я уже пробовал:

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

Richard MacCutchan

К сожалению, никто не собирается скачивать ваш проект и отлаживать его для вас. Пожалуйста, отредактируйте свой вопрос (пожалуйста, используйте Улучшить вопрос ссылка выше), опубликуйте код, в котором есть проблема, и объясните, где именно возникает проблема.

1 Ответов

Рейтинг:
1

KarstenK

Лучше всего использовать функции strtok из библиотеки th C после прочтения документации. Он нуждается в некотором стартовом токене, а затем возвращает следующие основания.


Rick York

Я использую его (strtok) все время. Нужно помнить, что это деструктивная функция синтаксического анализа, потому что она обнуляет все найденные разделители. Можно достичь аналогичных результатов, не разрушая, используя strcspn в цикле. Я подозреваю, что strtok был написан с использованием strcspn.