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

Реферат Створення програми-інтерпретатора для обробки вихідних текстів програм, що виконують дії над комплексними числами





/p>

{(! s) return (size_t) 0; strlen (s);

} * parser_format_string (const char * fmt, ...)

{* msg = (char *) calloc (MAX_TOKEN_LEN, sizeof (char)); _list args; _start (args, fmt); (msg, fmt, args); _end (args); msg ;

} parser_error (CodeBuffer * cb, char * msg, int opt)

{buffer [1024]; (opt && cb) (buffer, "Помилка парсера у рядку% d:% s n", lexer_line_num (cb), msg); (buffer , "Помилка парсера% s n", msg); -> RichEdit1-> Lines-> Add (buffer);

}

/* Змінні */parser_variable_add_value (CodeBuffer * cb, char * name, ParserVal * value)

{(value-> type == TOK_STRING) _variable_add_string_var (cb, name, value-> s, FALSE/* quoted * /); _variable_add_numeric_var (cb, name, value-> d );

} parser_variable_add_numeric_var (CodeBuffer * cb, char * name, double val)

{(! (cb && name)) return; * var = parser_variable_create_new (name); _value_init_to_numeric (& var-> val, val); _variable_add_to_list (cb-> variable_list , var);

} parser_variable_add_string_var (CodeBuffer * cb, char * name, char * val, int quoted)

{(! (cb && name)) return; * var = parser_variable_create_new (name);

/* "Цитувати"? */(Quoted)

{* tmp = parser_quote_string (val); _value_init_to_string (& var-> val, tmp); (tmp);

} _value_init_to_string (& var-> val, val); _variable_add_to_list (cb-> variable_list, var);

} parser_variable_add_standard_constants (CodeBuffer * cb)

{(! cb) return;

} ** parser_variable_create_list ()

{

/* Створити порожній список змінних */** list;

list = (ParserVariable **) calloc (MAX_VARIABLE_LIST_LEN, sizeof (ParserVariable)); list;

} * parser_variable_create_new (char * name)

{* var = (ParserVariable *) calloc (1, sizeof (ParserVariable));> name = parser_format_string ("% s", name);

/* Присвоїти 0.0 (TOK_NUMERIC) */_value_init_to_numeric (& var-> val, 0.0); var;

} parser_variable_add_to_list (ParserVariable * variables [], ParserVariable * var)

{i; = parser_variable_find (variables, var-> name);

if (i> -1)

{/ * Оновлення існуючої змінної */

parser_variable_delete (variables [i]); [i] = var; i;

}

/* Додавання нової змінної */(i = 0; i

{(! variables [i])

{[i] = var; i;

}

} _error (NULL, "Список зм...


Назад | сторінка 13 з 21 | Наступна сторінка





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

  • Реферат на тему: Return to materialism
  • Реферат на тему: This is a list of problems facing society today
  • Реферат на тему: Людина - вінець творіння або помилка природи
  • Реферат на тему: Помилка в платіжному дорученні. Інструкція до вирішення проблеми.
  • Реферат на тему: Створення програми додавання Користувачів в Linux