Проектирование компилятора LR ParserC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Проектирование компилятора LR Parser

Сообщение Anonymous »

Написание компилятора для определения, удовлетворяют ли следующие входные строки заданной конфигурации CFG или нет (1) "(i+i)i$" (2) "(i)$" строит мой проект но создается исключение
Исключение, созданное по адресу 0x00007FF883BDCF19 в Cpsc323Handout8.exe: исключение Microsoft C++: std::bad_alloc в ячейке памяти 0x0000004B15CFECD0

Код: Выделить всё

#include 
#include 
#include 
#include 

using namespace std;

string table[16][11] =
{ {"S5", "blank", "blank", "blank", "blank", "S4", "blank", "blank", "1", "2", "3"},
{"blank", "S6", "S7", "blank", "blank", "blank", "blank", "ACC", "blank", "blank", "blank"},
{"blank", "R3", "R3", "S8", "S9", "blank", "R3", "R3", "blank", "blank", "blank"},
{"blank", "R6", "R6", "R6", "R6", "blank", "R8", "R8", "blank", "blank", "blank"},
{"S5", "blank", "blank", "blank", "blank", "S4", "blank", "blank", "10", "2", "3"},
{"blank", "R8", "R8", "R8", "R8", "blank", "R8", "R8", "blank", "blank", "blank"},
{"S5", "blank", "blank", "blank", "blank", "S4", "blank", "blank", "blank", "11", "3"},
{"S5", "blank", "blank", "blank", "blank", "S4", "blank", "blank", "blank", "12", "3"},
{"S5", "blank", "blank", "blank", "blank", "S4", "blank", "blank", "blank", "blank", "13"},
{"S5", "blank", "blank", "blank", "blank", "S4", "blank", "blank", "blank", "blank", "14"},
{"blank", "S6", "S7", "blank", "blank", "blank", "S15", "blank", "blank", "blank", "blank"},
{"blank", "R1", "R1", "S8", "S9", "blank", "R1", "R1", "blank", "blank", "blank"},
{"blank", "R2", "R2", "S8", "S9", "blank", "R2", "R2", "blank", "blank", "blank"},
{"blank", "R4", "R4", "R4", "R4", "blank", "R4", "R4", "blank", "blank", "blank"},
{"blank", "R5", "R5", "R5", "R5", "blank", "R5", "R5", "blank", "blank", "blank"},
{"blank", "R7", "R7", "R7", "R7", "blank", "R7", "R7", "blank", "blank", "blank"}
};

void printStack(stack charStack)
{
stack temp;
char character;

while (charStack.empty() == false)
{
character = charStack.top();
charStack.pop();
temp.push(character);
}
cout 

Подробнее здесь: [url]https://stackoverflow.com/questions/78343927/compiler-design-lr-parser[/url]
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»