Форум программистов, компьютерный форум, киберфорум
Наши страницы
Бета-тестирование
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
Amir_05_05
0 / 0 / 0
Регистрация: 06.06.2015
Сообщений: 240
1

Компилятор

19.01.2016, 15:47. Просмотров 631. Ответов 10
Метки нет (Все метки)

Здравствуйте.Хочу представить мою программу-компилятор,если кому надо пользуйтесь на здоровье!По сути программа считывает данные с текстового файла и собирает из них команду(g++ -o... -I...и т.д)после чего команда выполняется и компилирует вашу программу. Программирую я уже как месяц(на c++),и вот написал первую полезную программу.Пожалуйста прокомментируйте,дайте советы или напишите замечания.
Управление программой:
F7:скрыть\отобразить окно
F8:открыть файл с параметрами
F9:Компиляция.
В файле с параметрами(config.txt) в первой строчке нужно вписать путь к коду вашей программы.Остальные строчки для дополнительных параметров таких как -l...,-I...,-L... и т.д.Их можно не заполнять.параметры нужно писать с ключом(-L,-I...). Имя выходного файла вписывать не нужно,программа сгенерирует его сама.
Ну вроде,всё.
Для работы компилятора нужен MinGW!
Сам компилятор:компилятор.rar
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.01.2016, 15:47
Ответы с готовыми решениями:

Компилятор (Visual C++ 6.0) в плохой совместимости с Windows 7. Посоветуйте другой компилятор
Здравствуйте! Я недавно начал заниматься С++, но мой компилятор (Visual C++ 6.0) в плохой...

Компилятор
Пишу компилятор паскаля. Есть button "Компелировать". Нужно чтобы при нажатии файл prog.pas...

Компилятор на XP
Здравствуйте. Интересует, какой компилятор C++ я могу использовать на Windows XP? Лучше среду...

Компилятор
Привет всем Подскажите пожалуйста Как вписать клон компилятора дельфи себе в программу Чистый...

Компилятор
Всем привет! В VC2003 в С++ столкнулся с проблемой: #include <afxdb.h> int main() {...

10
Hikari
Хитрая блондиночка $)
1453 / 966 / 399
Регистрация: 21.12.2015
Сообщений: 3,785
19.01.2016, 15:57 2
Эта программа просто запускает компилятор, скармливая ему файл с исходным кодом?
На исходник посмотреть можно?
1
Amir_05_05
0 / 0 / 0
Регистрация: 06.06.2015
Сообщений: 240
19.01.2016, 16:00  [ТС] 3
можно)))
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
#include <fstream>
#include<windows.h>
#include <iostream>
#include "hook.h"
using namespace std;
string replace(string str){
    string name;
    for(int n=str.size();n>=0;n--){
        if(str[n]==""[0]){
            for(int m=n+1,b=0;m<=str.size()-1;b++,m++){
                name+=" ";name[b]=str[m];
            }
            break;
        }
    }
    for(int i=name.size();i>=0;i--){
        if(name[i]=="."[0]){
            for(int p=i,c=0;p<=name.size();c++,p++){
                name[p]=".exe"[c];
            }
        }
    }
    return name;
}
void Hiden(bool mode){
    if(mode==true){
        HWND Hide;
        AllocConsole();
        Hide = FindWindowA("ConsoleWindowClass", NULL);
        ShowWindow(Hide,SW_HIDE);
    }else{
        HWND Hide;
        AllocConsole();
            Hide = FindWindowA("ConsoleWindowClass", NULL);
        ShowWindow(Hide,SW_SHOW);
    }
}
int main(){
    setlocale( LC_ALL,"Russian" );
    bool hide=false;
    int code=0;
    bool one=true;
    string temp;
    string temp2;
    string name;
    string command;
    char _command[500];
    SetHook();
    while(true){
        Update();
        code=GetVKCode();
        if(code!=0){
            switch(code){
            case 27:{goto x;break;}
            case 118:{if(GetKey()==true){SetKey(false);if(hide==false){Hiden(true);hide=true;}else{Hiden(false);hide=false;}}break;}
            case 119:{if(GetKey()==true){SetKey(false);ShellExecute(0,"open","config.txt",NULL,0,SW_SHOW);}break;}
            case 120:{
                if(GetKey()==true){
                    system("cls");
                    uncode();
                    ifstream config("config.txt");
                    while(!config.eof()){
                        getline(config,temp);
                        if(one==true){one=false;if(!temp.empty()){command+="g++ ""+temp+"" -o""+replace(temp)+""";}}else{
                            if(!temp.empty()){command+=" "+temp+" ";}}
                        temp.clear();
                    }
                    for(int i=0;i<=command.size();i++){_command[i]=command[i];}
                    if(system(_command)==0){if(hide==true){//
                            MessageBox(NULL,"Compiling successful!","Done!",MB_ICONASTERISK);}else{
                            cout<<"Compiling successful!";}}else{
                        if(hide==true){MessageBox(NULL,"Error,compilation fails!","Error!",MB_ICONWARNING);}else{
                            cout<<"Error,compilation fails!";}}
                    command.clear();
                    config.close();
            one=true;}}}}}x:UnSetHook();
}
0
GbaLog-
Любитель чаепитий
3170 / 1475 / 466
Регистрация: 24.08.2014
Сообщений: 5,210
Записей в блоге: 1
Завершенные тесты: 2
19.01.2016, 16:01 4
Amir_05_05, Честно говоря не очень, в config.txt можно было сделать и переменные( например, для файла с проектом можно было сделать path="c:\project\..." ), а то не понятно что куда писать и т.д.
0
Amir_05_05
0 / 0 / 0
Регистрация: 06.06.2015
Сообщений: 240
19.01.2016, 16:04  [ТС] 5
забыл стереть лишние переменные name и temp2)

Добавлено через 57 секунд
Цитата Сообщение от makfak Посмотреть сообщение
Честно говоря не очень, в config.txt можно было сделать и переменные( например, для файла с проектом можно было сделать path="c:\project\..." ), а то не понятно что куда писать и т.д.
хорошо,буду работать над этим
0
Hikari
Хитрая блондиночка $)
1453 / 966 / 399
Регистрация: 21.12.2015
Сообщений: 3,785
19.01.2016, 16:32 6
Цитата Сообщение от Amir_05_05 Посмотреть сообщение
можно)))
Ну за начинания - 5. Хотя это никак не компилятор...
Добавь тогда туда поддержку нескольких популярных компиляторов - будет норм.
Т.е. ПО определяет какие из них установлены в сисистеме и предлагает чем компилить.
0
Amir_05_05
0 / 0 / 0
Регистрация: 06.06.2015
Сообщений: 240
19.01.2016, 16:35  [ТС] 7
Цитата Сообщение от Hikari Посмотреть сообщение
Добавь тогда туда поддержку нескольких популярных компиляторов - будет норм.
буду дорабатывать!,хотя не представляю как)
0
locm
2196 / 921 / 118
Регистрация: 28.10.2011
Сообщений: 2,985
Записей в блоге: 6
21.01.2016, 00:30 8
Не запускается программа. Файлы libgcc_s_dw2-1.dll и libstdc++-6.dll ей нужны.
0
MrOnlineCoder
Всегда онлайн
552 / 463 / 187
Регистрация: 07.04.2013
Сообщений: 1,945
Завершенные тесты: 2
21.01.2016, 00:45 9
Amir_05_05, скорее не компилятор, а прототип системы сборки. Попробуйте добавить еще опции, разные виды сборки
0
Amir_05_05
0 / 0 / 0
Регистрация: 06.06.2015
Сообщений: 240
26.02.2016, 14:57  [ТС] 10
усовершенствовал код
Compiler.rar
для корректной работы программы создайте каталог D:\amir\Compiler и туда переместите компилятор(просто для себя делал так что не ругайтесь на это)
добавил:
f5:запуск скомпилированной программы
f6:обновил внешний интерфейс,можно создавать файлы проектов с программы.
f9:автоматический запуск программы после компиляции
f10:два режима работы компилятора(компилятор exe и компилятор dll)
остальное не изменял
0
Kotauskas
0 / 0 / 0
Регистрация: 09.06.2017
Сообщений: 4
14.06.2017, 15:36 11
А зачем тебе Windows.h? Можно же просто
C++
1
system("команда");
0
14.06.2017, 15:36
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.06.2017, 15:36

Компилятор G++
Здравствуйте, уважаемые программисты! У меня возникла такая проблема. Я всегда писал код на С++...

Компилятор
Здравствуйте форумчане, у меня есть установленная Qt 5.1. В ней присутствует компилятор который...

Компилятор C#
Давно мучает вопрос. При компиляции проекта в Visual Studio (в частности 2010), используется...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru