Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.74/19: Рейтинг темы: голосов - 19, средняя оценка - 4.74
1 / 1 / 1
Регистрация: 27.06.2014
Сообщений: 74

Компиляция исходного кода в работающей программе

07.07.2014, 16:21. Показов 4527. Ответов 47
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Привет.

Подскажите, как можно скомпилировать код, и использовать полученный результат в запущенной программе, если этот самый код находится, в компоненте (memo, list итд - неважно) этой запущенной пргораммы.

Я нашел 1 вариант - это сохранение этого кода в файл и компиляция в отдельном процессе.
Это правильный вариант? и есть ли еще пути решения?
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
07.07.2014, 16:21
Ответы с готовыми решениями:

Загрузка исходного кода и компиляция *.exe
Помогите разобраться как в Visual Studio 2010 загрузить исходный код для компиляции программы?

Компиляция исходного кода C++ ubuntu если нет компилятора g++
как запустить кода C++ в ubuntu если нет компилятора g++. код набран в текстовых файлах main.cpp func.cpp f.cpp func.h f.h в...

Исправить ошибку в программе, работающей с дробями
#include <iostream> using namespace std; int main(){ int a,b,c,d,e,f; cout << "Введите первую дробь:/n"; cin >> a...

47
1 / 1 / 1
Регистрация: 27.06.2014
Сообщений: 74
09.07.2014, 22:49  [ТС]
Студворк — интернет-сервис помощи студентам
а если "werwer" передается через параметр?
0
19501 / 10106 / 2461
Регистрация: 30.01.2014
Сообщений: 17,825
09.07.2014, 22:53
Цитата Сообщение от vlinx Посмотреть сообщение
как такую строку можно получить вообще?
C++
1
2
3
4
5
6
7
std::wstring compiler_path = L"C:\\strawberry\\c\\bin\\g++";
std::wstring dll_name = L"example_dll";
std::wstring workspace = L"D:\\test_dll_ias\\";
 
std::wstring w_dll_full_path = workspace + dll_name + L".dll";
 
h = LoadLibrary(w_dll_full_path.c_str());
Добавлено через 38 секунд
Цитата Сообщение от vlinx Посмотреть сообщение
а если "werwer" передается через параметр?
Через какой?
1
1 / 1 / 1
Регистрация: 27.06.2014
Сообщений: 74
09.07.2014, 22:56  [ТС]
Цитата Сообщение от DrOffset Посмотреть сообщение
Через какой?
C++
1
2
3
4
5
std::wstring func(std::wstring p1, std::wstring p2)
{
     std::wstring res = p1 + p2 + ".dll";
    return res;
}
Добавлено через 1 минуту
а, я кажется подустал)
все понятно
0
19501 / 10106 / 2461
Регистрация: 30.01.2014
Сообщений: 17,825
09.07.2014, 23:03
vlinx, вопрос, который тут действительно может поставить в затруднение, так это main и его параметры.
В стандарте нет версии с wchar_t. Но в VisualStudio уже об этом подумали, там "юникодность" программы переключается прямо в настройках проекта. И есть специальная версия - wmain.
То, что это непереносимо - плохо. Но в целом для программирования в win - это хорошо. Т.к. приложение должно максимально полно взаимодействовать с системой - начиная от внешнего вида UI и заканчивая API.

Добавлено через 1 минуту
Цитата Сообщение от vlinx Посмотреть сообщение
C++
1
2
3
4
std::wstring func(std::wstring const & p1, std::wstring const & p2) 
{
    return p1 + p2 + L".dll"; 
}
Fixed.
0
1 / 1 / 1
Регистрация: 27.06.2014
Сообщений: 74
09.07.2014, 23:07  [ТС]
Всегда, вот всегда как дело касается кодировок, начинается какая-то фигня и мозголомство. Не только с кодом, да и при передаче данных, запросов на сервер, и все это из-за кодировок блин. Сколько раз уже замечал
0
19501 / 10106 / 2461
Регистрация: 30.01.2014
Сообщений: 17,825
09.07.2014, 23:13
Цитата Сообщение от vlinx Посмотреть сообщение
Всегда, вот всегда как дело касается кодировок, начинается какая-то фигня и мозголомство. Не только с кодом, ди при передаче данных, запросов на сервер, и все это из-за кодировок блин. Сколько раз уже замечал
Легко могу понять. Это отчасти из-за того, что с++ долгое время не знал про юникод вообще ничего. Отчасти из-за того, что когда изобрели юникод было уже огромное количество систем со своими порядками насчет кодировок. Чего стоит только одна KOI8-R (я лично до сих пор от нее огребаю).
Но если разобраться с юникодом и взять за основу одну из стратегий использования (например в win - использовать только UCS-2 (про сетевую передачу - отдельный разговор, который требует отдельного рассмотрения)), то жить становится проще.
Вот в Qt например тоже все строки юникодные. Там это поставлено в основу и если понять концепцию, а не бороться с ней, то тоже все становится просто и понятно.
1
1 / 1 / 1
Регистрация: 27.06.2014
Сообщений: 74
10.07.2014, 10:49  [ТС]
Вариант 4.

DrOffset, а не подскажешь, как прикрутить интерпретатор CH к программе? Имею ввиду куда lib пихнуть, где пути ко ввсем include прописать? По ссылке, смотрел - там говориться как использовать его уже по назначению, а вот как настроить не нашел

Добавлено через 3 минуты
так.. а код нужно в самой IDE ch писать походу? - я бы хотел писать в своей IDE и вызывать блоки CH в ней
0
19501 / 10106 / 2461
Регистрация: 30.01.2014
Сообщений: 17,825
10.07.2014, 15:05
Цитата Сообщение от vlinx Посмотреть сообщение
а код нужно в самой IDE ch писать походу?
Да вроде бы нет. В статье код прямо в демонстрационной программе был написан.

Цитата Сообщение от vlinx Посмотреть сообщение
а не подскажешь, как прикрутить интерпретатор CH к программе?
Внутри есть каталог extern, там include и lib (для visual studio). Вот их и прописывать.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
10.07.2014, 15:05

Компиляция кода Freeglut
Здравствуйте. Стоит Ubuntu 12.10, компилятор g++ , библиотеку freeglut поставил из репозитория, после чего инклуды появились нужном месте в...

Компиляция кода в приложении
Можно каким-либо образом скомпилировать код в работающем приложении. Т.е. приложение работает, в него подается файл с исходным кодом, его...

Компиляция кода в командной строке
на паре нам показывали как работать с прогой, написанной на ассемблере - cmd-> выбор директории -> создание объектного файла с помощью...

Компиляция кода с ромбовидным наследованием
Здравствуйте. Я написал элементарное наследование. На VS 2015 всё компилится, а на CLion нет. В чём может быть проблема? class A { ...

Компиляция кода под конкретную ОС
Есть ОС Windows, Linux, Android. Хочу понять базовые знание по тому как делается библиотека работающая на всех ОС. Допустим пишем...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
48
Ответ Создать тему
Новые блоги и статьи
Море в объективе
kumehtar 06.07.2026
Хотел написать много проникновенных слов, но передумал. Оно само - говорит. Кто слышит тот слышит.
Оказывается, Unreal Engine позволяет качество на порядки выше, чем было в Lineedge
Etyuhibosecyu 05.07.2026
Жаль, конечно, что я не узнал об этом, пока Lineedge существовала, а то бы Noname2331 написал, что волки превращаются в пиксельную кашу, а я бы его попросил скачать какую-нибудь бриллиантовую или Pro. . .
Doom для терминала без стрельбы и монстров. 3D Raycasting на ascii.
dcc0 05.07.2026
Попросил нейронную сеть deepai. org написать рейкастинг 3D с библиотекой ncurses для Linux. Чтобы можно было ходить на стрелочки. Чтобы стены были отрисованы символами. Справилась. Первый вариант. . .
Установка статуса документа по условию
Maks 05.07.2026
Алгоритм из решения ниже реализован на нетиповом документе "НарядПутевка" разработанного в КА2. Задача: в табличной части "Материалы" документа при записи автоматически устанавливать статус. . .
Сезонность и суточность закисления почв
anaschu 04.07.2026
200 часов это все равно моловато. Есть ситуации, но нестандартные, когда смена происходит за 5 лет. Но обычно это 50 лет и более. Наверное, закисление почвы происходит сезонно в средней. . .
В чем ценность человеческого опыта в глобальном смысле?
kumehtar 03.07.2026
Возможно, ценность человека не в том, что он однажды достигает мудрости, а в том, что он становится носителем карты пути. Он знает не только истину, но и последовательность внутренних изменений,. . .
интеграция AnyLogic с самописным REST API и переход на Odoo
anaschu 03.07.2026
Успешная интеграция AnyLogic с самописным REST API и переход на промышленную Odoo WMS Сегодня проделал огромный путь от простой симуляции физических процессов до построения полноценной. . .
Поиск всех путей на ориентированном графе. Linux
dcc0 02.07.2026
Переработка старого кода из моей статьи. Через несколько переработок от PHP кода к C89 (надеюсь, 89). Но довольно запутанно получилось. Код для Linux. Но если убрать time и то, что с ним. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru