Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

C++ Builder

647
22 марта 2003 года
vital
73 / / 22.03.2003
Народ кто знает как сделать из строки управляющую структуру(есть строка с надписью sin(t), надо передать это чтобы получилось Double y=sin(t))
есть анология в матлабе - функция EVAL
как это можно сделать на с++
317
22 марта 2003 года
Relax
573 / / 20.09.2000
если я правильно понял - тебе поможет #define - макроопрделение, типа:

#define sin(t) double y=sin(t)
647
22 марта 2003 года
vital
73 / / 22.03.2003
Цитата:
Originally posted by Relax
если я правильно понял - тебе поможет #define - макроопрделение, типа:

#define sin(t) double y=sin(t)



Расскажите по подробнее если не сложно что-за макроопределение, как оно работает и с чем его едят

317
22 марта 2003 года
Relax
573 / / 20.09.2000
Цитата:
Originally posted by vital


Расскажите по подробнее если не сложно что-за макроопределение, как оно работает и с чем его едят



да вобщем-то так и работает... пишешь строку типа:
#define A <token>
А - это макрос, а <token> - строка подстановки... на стадии компиляции препроцессор подставляет вместо макросов их значение...

647
22 марта 2003 года
vital
73 / / 22.03.2003
Цитата:
Originally posted by Relax


да вобщем-то так и работает... пишешь строку типа:
#define A <token>
А - это макрос, а <token> - строка подстановки... на стадии компиляции препроцессор подставляет вместо макросов их значение...




мне кажется это не то у меня есть поле Edit->Text
там я пишу функцию (напр. sin(t)) график которой мне надо построить(
for(Double t=0; t<=100; t++)
{
double y=Edit->Text.....вот здесь и ошибка
Canvas->Pixels[t][y]....тра-ля-ля
}
)
а как сделать не знаю

1.6K
22 марта 2003 года
Unexpected
137 / / 09.12.2002
Тогда спасет только парсер (собственный или чужой) исходников в инете полно. А для простых вариантов(без учета приоритетов операций [типа sin(a)+b]) он пишется 5 минут.
647
22 марта 2003 года
vital
73 / / 22.03.2003
Цитата:
Originally posted by Unexpected
Тогда спасет только парсер (собственный или чужой) исходников в инете полно. А для простых вариантов(без учета приоритетов операций [типа sin(a)+b]) он пишется 5 минут.




что такое парсер я не знаю попробую найти знать бы от чего оттолкнуться

1.6K
22 марта 2003 года
Unexpected
137 / / 09.12.2002
Парсер это синтаксический анализатор.
647
22 марта 2003 года
vital
73 / / 22.03.2003
Цитата:
Originally posted by Unexpected
Парсер это синтаксический анализатор.




Нашел я в инете про парсер (как раз то что надо)только простенький
попробую разобраться если смогу то напишу свой
мне надо по сложней но спасибо и за это витал

647
22 марта 2003 года
vital
73 / / 22.03.2003
Цитата:
Originally posted by vital



Нашел я в инете про парсер (как раз то что надо)только простенький
попробую разобраться если смогу то напишу свой
мне надо по сложней но спасибо и за это витал




как я понял он берет букву сравн ее с чем нибуть и прыгает туда где в выраж уже есть такая буква
далее сравнивает 2 букву и т.д.
да самому написать запарка(не трудно,но долго)
спасибо народ хоть идеи появились если что то пишите

1.6K
22 марта 2003 года
Unexpected
137 / / 09.12.2002
На самом деле то, что тебе нужно гораздо проще.
Это алгоритм, который разбивает строку на элементы и преобразует ее в удобоворимую для обсчета форму(или считает сразу).
Можешь найти пример (на паскале, правда)в исходниках DosNavigator или кучу примеров в SWAG

А насчет идей - см., например, сюда:
http://forum.codenet.ru/showthread.php?s=&threadid=8138
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог