Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Технологии > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы
Старый 05.02.2010, 17:13   #1
Florent
 
Аватар для Florent
 
Регистрация: 24.01.2009
Сообщений: 6
Репутация: 14
По умолчанию Ввод куска кода с клавиатуры в процессе выполнения программы (язык Си)

Здравствуйте. Давно интересует вопрос: как (в частности, на языке си) в процессе выполнения программы ввести с клавиатуры кусок кода? Например, ввести какую-нибудь числовую функцию (со всеми операциями, скобками и т.д.), чтобы посчитать её интеграл. Можно было бы через макрос, но мешают кавычки. Может можно как-то обрезать содержимое макросов?
Florent вне форума   Ответить с цитированием
Старый 05.02.2010, 20:59   #2
Vago
Участник клуба
 
Регистрация: 15.01.2010
Сообщений: 941
Репутация: 355
По умолчанию

Formula Translation (ну и по другим ссылкам на аналогичный запрос в Гугле).

И по-моему (хотя буду рад ошибиться), на этом форуме не слишком много народа, занимавшегося разработкой трансляторов или символьными вычислениями. Если серьёзно намерен закопаться в эту задачу - спрашивай на специализированных форумах.
Vago вне форума   Ответить с цитированием
Старый 05.02.2010, 22:57   #3
Florent
 
Аватар для Florent
 
Регистрация: 24.01.2009
Сообщений: 6
Репутация: 14
По умолчанию

Спасибо за ссылку, но это не совсем то, что мне нужно... Наверное, я плохо сформулировал вопрос. Задача гораздо проще) Предполагается, что пользователь вводит функцию уже в понятном языку Си виде (например, "2*(х*х-5*sin(2*x))"), нужно лишь как-то вставить её в код. Через строку и макрос не получится, так как будут мешаться кавычки... вот если бы их как-нибудь убрать...
Florent вне форума   Ответить с цитированием
Старый 05.02.2010, 23:04   #4
netrino
Профессионал
 
Аватар для netrino
 
Регистрация: 15.07.2008
Адрес: г. Киев, Украина
Сообщений: 1,933
Репутация: 736
По умолчанию

Цитата:
Сообщение от Florent Посмотреть сообщение
Спасибо за ссылку, но это не совсем то, что мне нужно... Наверное, я плохо сформулировал вопрос. Задача гораздо проще) Предполагается, что пользователь вводит функцию уже в понятном языку Си виде (например, "2*(х*х-5*sin(2*x))"), нужно лишь как-то вставить её в код. Через строку и макрос не получится, так как будут мешаться кавычки... вот если бы их как-нибудь убрать...
Это будет сделать ещё сложнее, нельзя "вставлять" подобный код в свои приложения во время исполнения, так как это не является конечным кодом, который исполняется. Если хотите нечто похожее, то вам придётся писать транслятор Си, естественно это тяжело и муторно )
netrino вне форума   Ответить с цитированием
Старый 05.02.2010, 23:34   #5
Vago
Участник клуба
 
Регистрация: 15.01.2010
Сообщений: 941
Репутация: 355
По умолчанию

Попробуйте ещё вот такой запрос: "run-time expression parser C++".

(Смотрю на первую и вторую вывалившиеся ссылки... 4.8 - это весьма высокий рейтинг на CodeProject. Вполне может быть что-то дельное).
Vago вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ввод с клавиатуры Sparky Assembler 5 10.09.2009 17:05
Прошу помощи в разборе куска кода драйвера RIL под ARM Lebets_VI Win Api 0 14.08.2009 13:58
Как осуществить возможность выбора БД в процессе работы программы Cabyrc БД в Delphi 9 21.03.2009 09:30
Ввод с клавиатуры без остановки программы ActioNs Общие вопросы C/C++ 1 25.12.2008 05:40
Можно ли ввести данные в таблицу StringGrid не в процессе выполнения программы а заранее Arassir Помощь студентам 5 02.11.2008 18:34


11:28.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru