2014-08-31 8 views
-1

Я новичок в C++ и пытаюсь закодировать программу, в которую я ввожу много вещей одновременно, и она разбивает их на разные строки, ints и т. Д. В зависимости от того, что они есть, но я не могу понять, как это сделать.Как разделить длинный ввод на несколько элементов на C++?

Я хочу, чтобы иметь возможность вводить, например, «Что такое 7 плюс 9?» и закодируйте его так, чтобы он назначил первое число (7) int a, второе число (9) - int b, распознало слово «плюс» как оператор. Затем это перейдет к простой программе калькулятора, которую я уже правильно закодировал и затем выдал бы ответ.

Как его закодировать, чтобы он мог разделить весь вход на несколько отдельных элементов? Я думал, что должна быть какая-то функция для формата ввода, и в этом случае я мог бы определить ввод как string1, string2, int a, string 3, int b и просто знать, что начало/конец каждого пробела. Все, что вы имеете в виду, которые могли бы сделать это, пожалуйста, дайте мне знать.

Благодаря

+1

Итак, вы хотите человеку языке парсер и вы думали, что вы просто случайно тащиться на переполнение стека и попросить код? Вы знаете, что такое программное обеспечение, как Google и Siri, берет миллиарды долларов на исследования и разработку, верно? –

+0

Это был просто пример, извините, если я оскорбил вас, но я просто подумал, что это будет простой способ объяснить типы вещей, которые я хотел сделать. – Eric

+0

Ты меня не «оскорбил»; вы просто задали вопрос, который слишком важен для этого сайта. Или любой сайт. –

ответ

1

идеале лексический и синтаксический анализатор, как ANTLR или Лекса/Yacc будет большим, но кривая обучения крутой

+0

Я немного искал язык, и похоже, что это сработает. Я посмотрю, смогу ли я найти несколько примеров или учебников, так как он выглядит намного выше моего уровня и, надеюсь, я могу заставить это работать. Благодаря! – Eric

Смежные вопросы