Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Курсовые обзорные » Розробка компілятора мови С + +

Реферат Розробка компілятора мови С + +





"justify">// ---------------------



Додаток Б


Зберігання лексем


bool Punkt :: operator () (const AnsiString s)

{return find (punkt.begin (), punkt.end (), s)! = punkt.end ();

} :: Punkt ()

{punkt.push_back ("..."); punkt.push_back (";");. push_back (":") ; punkt.push_back (",");


Перевірка на приналежність


if (ISpunkt (sym_table [i]. chr))

{int len + +;

continue;

}


Функція перевіряє на наявність арифметичних операцій у виразі


int if_there_arifmetic_ops (long ii)

{TLexeme * Lexemes;// Знайдені лексеми: тип, тіло, рядок

cell curr_par;// об'єкт структури (сама структура в 1.h)

int Number = Form1-> scaner_result.size (); = new TLexeme [Number];// нейденние лексеми (int t = 0, j = 0; t

{//в "рядок" переміщаємо дані з ВЕЛИКОГО масиву

curr_par = Form1-> scaner_result [j];

// відразу записуємо в новий

Lexemes [j]. type = curr_par.type;

Lexemes [j]. body = curr_par.value; [j]. position = curr_par.str; + +;

} f = 0; i; cs = 0 ;//Рахунок дужок (i = ii; i

{if (Lexemes [i]. body == ";" | | Lexemes [i]. body == ",") break; (Lexemes [i]. body = = "&&" | | Lexemes [i]. body == "| |" | | Lexemes [i]. body == "<" | | Lexemes [i]. body = =">"

| | Lexemes [i]. body == "! =" | | Lexemes [i]. body == "==" | | Lexemes [i]. body == "<=" | | Lexemes [i]. body =="> =") break; (Lexemes [i]. body == "(") cs + +; (Lexemes [i]. body == ")") cs -; (cs <0) break; (Lexemes [i]. body == "+" | | Lexemes [i]. body == "-" | | Lexemes [i]. body == "*" | | Lexemes [i]. body == "/" | | Lexemes [i]. body == "^") = 1;

} f; [] Lexemes;

}


Назад | сторінка 7 з 7





Схожі реферати:

  • Реферат на тему: Розстановка дужок в арифметичному виразі
  • Реферат на тему: Роль оціночного компонента значення лексеми очі в творах М.А. Булгакова «С ...
  • Реферат на тему: Додаток теорії порівнянь при перевірці результатів арифметичних дій
  • Реферат на тему: Розробка аналізує частини компілятора мови З
  • Реферат на тему: Проектування цифрового автомата з виконання арифметичних операцій