|
155 / 137 / 46
Регистрация: 15.02.2010
Сообщений: 750
|
||||||
Использование компилятора28.07.2018, 09:12. Показов 1108. Ответов 17
Метки нет (Все метки)
Имеется С++ код, например, такой:
1) Отправляло на компиляцию указанный код 2) Сохраняло в нужном месте откомпилированный файл. Не пойму с чего начать. -Где искать компилятор, если на машине установлена, например, Visual Studio или другая среда? -Как отправить код для выполнения компилятором? -Где потом найти созданный компилятором исполнимый exe-файл? Подскажите, или дайте ссылки, где почитать об этом...
0
|
||||||
| 28.07.2018, 09:12 | |
|
Ответы с готовыми решениями:
17
Использование атрибутов компилятора Директивы компилятора Ошибка компилятора |
|
7804 / 6568 / 2988
Регистрация: 14.04.2014
Сообщений: 28,705
|
|
| 28.07.2018, 09:38 | |
|
В чём суть задачи? Это делается обычно сценарием типа bat/cmd.
0
|
|
|
Заклинатель змей
705 / 560 / 219
Регистрация: 30.04.2016
Сообщений: 2,605
|
|
| 28.07.2018, 11:21 | |
|
1
|
|
|
155 / 137 / 46
Регистрация: 15.02.2010
Сообщений: 750
|
||||||||
| 28.07.2018, 11:53 [ТС] | ||||||||
|
Есть консольное С++ приложение. Есть символьный код, например, в переменной типа std::string. На машине установлен Visual Studio. Нужно: Средствами консольного приложения передать код компилятору С++ и сохранить скомпилированный файл в папке проекта. Например:
Добавлено через 13 минут "-А у Вас есть с перламутровыми пуговицами? -Нет. -Будем искать."
0
|
||||||||
|
зомбяк
1585 / 1219 / 345
Регистрация: 14.05.2017
Сообщений: 3,940
|
||
| 28.07.2018, 11:59 | ||
|
2) с помощью вызова system() по очереди запускать строки из того батника (только нужные и с прописанными нужными файлами и путями)
1
|
||
|
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
|
||
| 28.07.2018, 15:59 | ||
|
0
|
||
|
155 / 137 / 46
Регистрация: 15.02.2010
Сообщений: 750
|
|||
| 28.07.2018, 18:20 [ТС] | |||
|
На входе имеется символьная строка, на выходе - скомпилированный файл. Зачем это мне нужно? Сделал программку, проверяющую решения задач типа: дано/найти. На входе программа получает - скомпилированный exe-файл. На выходе - результат прохождения контрольных тестов. Теперь же хочу сделать, чтобы на входе был не ехе-шник, а срр-код.
0
|
|||
|
4079 / 2677 / 432
Регистрация: 09.09.2017
Сообщений: 11,888
|
||||||
| 29.07.2018, 09:06 | ||||||
1
|
||||||
|
155 / 137 / 46
Регистрация: 15.02.2010
Сообщений: 750
|
||||||||||||
| 30.07.2018, 07:51 [ТС] | ||||||||||||
|
COKPOWEHEU, и как это "влепить" сюда:
С командной строки могу скомпилировать файл Hello.cpp по команде CL /EHsc [путь] Но, это всё в ручном режиме. А через консольное приложение не получается. Вот путь к bat-нику командной строки: C:\Program Files(x86)\Microsoft Visual Studio\2017\Community\Common7\Tools\VsDe vCmd.bat Но через sistem не могу открыть командную строку (не говоря уже о том, чтобы задать ей параметры: CL /EHsc [путь к файлу])
Вопрос 1: Почему "не удаётся найти файл", если я в ручном режиме его нахожу в указанном месте и двойным кликом открываю командную строку Visual Studio? Что я не так прописываю в system? Вопрос 2: А если мне нужно задать параметры для командной строки, то нужно делать так: system("start /D "C:\\Program Files(x86)\\Microsoft Visual Studio\\2017\\Community\\Common7\\Tools" VsDevCmd.bat CL /EHsc [путь к срр-файлу]"); Или не так?
0
|
||||||||||||
|
155 / 137 / 46
Регистрация: 15.02.2010
Сообщений: 750
|
|
| 30.07.2018, 07:56 [ТС] | |
|
вернее, так:
system("start /D "C:\\Program Files(x86)\\Microsoft Visual Studio\\2017\\Community\\Common7\\Tools" "VsDevCmd.bat CL /EHsc [путь к срр-файлу]""); Или не так? Почему-то съелись обратные слеши перед кавычками в параметре к командной строке ".
0
|
|
|
155 / 137 / 46
Регистрация: 15.02.2010
Сообщений: 750
|
|
| 30.07.2018, 08:06 [ТС] | |
|
Вот это правильная структура?
0
|
|
|
155 / 137 / 46
Регистрация: 15.02.2010
Сообщений: 750
|
|
| 30.07.2018, 08:10 [ТС] | |
|
Вот
0
|
|
|
4079 / 2677 / 432
Регистрация: 09.09.2017
Сообщений: 11,888
|
||
| 30.07.2018, 10:01 | ||
|
1
|
||
|
155 / 137 / 46
Регистрация: 15.02.2010
Сообщений: 750
|
||||||||||||||||||||||||||||||||||||
| 30.07.2018, 11:43 [ТС] | ||||||||||||||||||||||||||||||||||||
|
Спасибо, COKPOWEHEU. Подумаю, как его пришить к моему проекту...
А пока "вернёмся к нашим баранам" Я поместил текстовый файл в папку Program Files:
Поместил то же текстовый файл в папку Windows:
Кажется, system не хочет читать пробелы? Создал свою папку на диске С. С неё system прекрасно читает файл.
Как с этим справиться - не знаю. Попробовал через API используя ShellExecute с авторскими правами:
Всё работает. Процесс завершается без ошибок. Но нет ожидаемого результата - командной строки. Поместил в папку текстовый файл, но он тоже не открывается:
0
|
||||||||||||||||||||||||||||||||||||
|
4079 / 2677 / 432
Регистрация: 09.09.2017
Сообщений: 11,888
|
|||||||
| 30.07.2018, 11:44 | |||||||
0
|
|||||||
|
155 / 137 / 46
Регистрация: 15.02.2010
Сообщений: 750
|
||
| 30.07.2018, 11:52 [ТС] | ||
|
Только мне нужно не директории... а файл открыть. Наверное всё же нужно открывать файл от имени администратора. Как это сделать через system - не знаю. Поэтому попробовал через ShellExecute. Но ничего не получается. Даже то, что открывалось через system, в ShellExecute не открывается. Видимо, что-то не так я прописываю... Но что?
0
|
||
|
415 / 150 / 48
Регистрация: 02.06.2016
Сообщений: 364
|
|||||||
| 30.07.2018, 11:54 | |||||||
1
|
|||||||
|
155 / 137 / 46
Регистрация: 15.02.2010
Сообщений: 750
|
||||||
| 30.07.2018, 22:08 [ТС] | ||||||
|
Никогда не использовал putenv().
Пошел разбираться, что и как... Спасибо за подсказку, GoshaM. Добавлено через 10 часов 2 минуты Ну, в общем разобрался... Вот четыре рабочих способа открытия командной строки Visual Studio Community 2017 (может кому пригодится)
(не знаю, почему сразу не открывалось... Может из-за отсутствия <process.h>)
0
|
||||||
| 30.07.2018, 22:08 | |
|
Помогаю со студенческими работами здесь
18
Смена Компилятора Ошибка компилятора Выбор компилятора С++ Ошибка компилятора Ошибка Компилятора в C++ Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
|
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут.
В век Веб все очень привыкли к дизайну Single-Page-Application .
Быстренько разберем подход "на фреймах".
Мы делаем одну. . .
|