Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
Милашечка
0 / 0 / 4
Регистрация: 16.02.2013
Сообщений: 122
1

Создать главное меню из 5 cpp файлов.работа в консольке

28.03.2013, 11:45. Просмотров 2001. Ответов 48
Метки нет (Все метки)

Есть 5 рабочих программ-файлов на различные тематики. Их нужно поместить в одну главную програмку с меню,для того чтоб выбирать какую програмку выполнять далее.. Как работает switch для выбора - знаю,а как обьявлять файлы-.cpp в switch case, в программе незнаю.

Подскажите, или покидайте ссылочки, где можно почитать как это делать ,пожалуйста..
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.03.2013, 11:45
Ответы с готовыми решениями:

В программе создать главное и контекстное меню. Вывести справку о разработчике
Вывести на экран все трехзначные числа, которые начинаются и заканчиваются на...

Подключение файлов main.cpp some.cpp some.h
Всем привет, программа разделенна на три файла poly.cpp main.cpp poly.h Кто мог...

Возврат назад в главное меню из подпункта меню
Добрый вечер, подскажите пожалуйста, как организовать многоуровневое меню? А...

Как вернуться в главное меню!
Всем привет!Я сделал простенькую программу,которая записывает что-то в файл и...

Главное меню с подменю и поиск
Доброго времени суток. Собственно возник вопрос , как сделать в консольном...

48
SummerRain
327 / 326 / 92
Регистрация: 16.12.2012
Сообщений: 544
28.03.2013, 11:52 2
добавьте их в один проект.
Создайте 6 файл Main.cpp.
А у этих 5 файлов переименуйте их функции main в func1, func2, func3...
Main.cpp должен выглядить примерно так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include "func1.cpp" // ваши файлы
#include "func2.cpp"
#include "func3.cpp"
...
int main()
{
    int n;
    cin >> n;
    switch (n)
    {
    case 1: func1();
        break;
    case 2: func2();
        break;
    case 3: func3();
        break;
        ...
 
    }
}
0
Kuzia domovenok
2394 / 2115 / 509
Регистрация: 25.03.2012
Сообщений: 7,613
Записей в блоге: 1
28.03.2013, 13:04 3
Цитата Сообщение от SummerRain Посмотреть сообщение
#include "func1.cpp" // ваши файлы
#include "func2.cpp"
#include "func3.cpp"
больше никогда не давай такие советы.
Вообще, откуда берётся эта бредятина? Куча новичков считает, что срр файлы должны инклудиться друг в друга. Откуда это пошло? Вы вообще какие книги читаете? Я не знаю ни одной книги, в которой советуют так делать.

Мой совет. Просто добавить срр файлы в проект. в каждом файле прописать прототипы используемых внешних переменных и функций и всё. Строить проект!

Да, иногда для удобства прототипы выносят в заголовочные файлы и инклудят затем. Но это Заголовочные(!) (.h) файлы.
Я в качестве первого упражнения даже их не советую инклудить, а прописать прототипы в срр файле. А то у тебя похоже неправильное представление об includeах
1
SummerRain
327 / 326 / 92
Регистрация: 16.12.2012
Сообщений: 544
28.03.2013, 13:13 4
О боже, я грешный еретик. Как я мог инклюдить cpp файлы!
Да знаю я про эти инклюды. Просто долго описывать, как ещё заморачиваться с .h файлами. А так всё просто и понятно.
0
Croessmah
++Ͻ
14740 / 8422 / 1597
Регистрация: 27.09.2012
Сообщений: 20,714
Записей в блоге: 2
Завершенные тесты: 1
28.03.2013, 13:58 5
Цитата Сообщение от SummerRain Посмотреть сообщение
А так всё просто и понятно.
Сразу полезут ошибки на подобии "multiple definition" и всё будет очень не понятно!
0
Friday
ну и долго меня небыло...
61 / 57 / 8
Регистрация: 24.03.2013
Сообщений: 173
28.03.2013, 14:31 6
Цитата Сообщение от SummerRain Посмотреть сообщение
А так всё просто и понятно.
и неправильно
0
Милашечка
0 / 0 / 4
Регистрация: 16.02.2013
Сообщений: 122
26.04.2013, 22:14  [ТС] 7
что такое прототипы функции, как их прописывать понимаю...но все вместе сбивает..
в проект файлики свои закинула, еще один создала..а как дальше не могу понять..
может есть какие-нибудь примеры?или дайте ссылочку плииз ..
мне наглядно намного проще..
не знаю даже как правильно и что в поисковик вбить если честно, чтоб найти то что мне надо посмотреть...
0
alsav22
5442 / 4837 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
27.04.2013, 01:55 8
Можно просто:
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
#include <iostream>
using namespace std;
 
int func1();
int func2();
int func3();
 
int main()
{
    int n;
    cin >> n;
    switch (n)
    {
    case 1: func1();
        break;
    case 2: func2();
        break;
    case 3: func3();
        break;
        
    }
 
    system("pause");
    return 0;
 
}
func1(), func2(), func3() - бывшие main(), которые находятся в .cpp файлах, включенных в проект.
0
Милашечка
0 / 0 / 4
Регистрация: 16.02.2013
Сообщений: 122
29.04.2013, 22:52  [ТС] 9
спасибо..думала финиш..
но выбило всего одну ошибку в итоге
Почему-то после компиляции dev-cpp выдает такую ошибку:
D:\Ó×ÅÁÀ\àëãîðèòìè÷åñêèå ÿçûêè\ÊÓÐÑÎÂÛÅ\Makefile.win [Build Error] [çàäàíèå1/zadanie1.o] Error 1
Пыталась разобраться сама, но чтото не получается.
Что не так??
0
alsav22
5442 / 4837 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
29.04.2013, 23:00 10
Цитата Сообщение от Милашечка Посмотреть сообщение
Пыталась разобраться сама
В иероглифах?
0
kravam
быдлокодер
1709 / 896 / 105
Регистрация: 04.06.2008
Сообщений: 5,542
29.04.2013, 23:18 11
Можно написать такой батник:

Bash
1
g++ -o main.exe main.cpp main_0.cpp main_1.cpp и так далее
Ну и всё, собсно.
Сам я проекты штатным способом в Dev-Cpp не создаю по причине: дело в том, что они компилятор предлагают устаревший. То есть проекты в Dev-Cpp можно создать только со старым компилятором (родным). Ну, например 3.4.2

А если обновлять компилятор, который в Dev-Cpp, то тоже не первой свежести обновления будут.

Так, а если качнуть Dev-Cpp без компилятора+ качнуть компилятор отдельно, то проект не создастся. Какие-то там заморочки с makefile. Собсно так и работаю, пишу батники.
0
alsav22
5442 / 4837 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
29.04.2013, 23:30 12
TDM-GCC 4.7.1 64bit устаревший что-ли?
0
Милашечка
0 / 0 / 4
Регистрация: 16.02.2013
Сообщений: 122
29.04.2013, 23:36  [ТС] 13
это путь к файлу.так здесь русский отобразился. я просто полностью скопировала сообщение которое вывел компилятор и вставила.. у меня компилятор русский видит нормально, а здесь не оч что-то вывелось как у меня.. могу и без пути написать то же самое..вот так например:

D:\***\Makefile.win [Build Error] [**\zadanie1.o] Error 1

там где **-кириллица идет
0
kravam
быдлокодер
1709 / 896 / 105
Регистрация: 04.06.2008
Сообщений: 5,542
29.04.2013, 23:41 14
Цитата Сообщение от alsav22 Посмотреть сообщение
TDM-GCC 4.7.1 64bit устаревший что-ли?
Не ну сказать, всё что угодно можно. Я сейчас скачаю Dev-Cpp по официальной ссыли и там будет g++ 3.4.2. А откуда ты взял 4.7.1, ты молчишь. Ну, молчи дальше.

Добавлено через 2 минуты
Милашечка, помещай проекты в папки с именами без кириллицы. Может есть другой способ, но этот верняк.
0
alsav22
5442 / 4837 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
29.04.2013, 23:50 15
Милашечка, название проекта и файлов английские? Если нет, то по новой создать.

Добавлено через 1 минуту
Цитата Сообщение от kravam Посмотреть сообщение
А откуда ты взял 4.7.1, ты молчишь. Ну, молчи дальше.
А кто-то разве спросил? Или нужно сразу доклаывать, без вопросов? Вместе с Dev-Cpp 5.4.0 шёл.

Добавлено через 3 минуты
Точно не помню, но, по-моему, отсюда скачивал: http://www.bloodshed.net/ или отсюда:http://orwelldevcpp.blogspot.ru/
0
kravam
быдлокодер
1709 / 896 / 105
Регистрация: 04.06.2008
Сообщений: 5,542
29.04.2013, 23:50 16
Цитата Сообщение от alsav22 Посмотреть сообщение
А кто-то разве спросил? Или нужно сразу доклаывать, без вопросов?
Цитата Сообщение от alsav22 Посмотреть сообщение
TDM-GCC 4.7.1 64bit устаревший что-ли?
Я бы не позволил себе так писать. Ибо флуд. Я пофлудить люблю, но не здесь же.

Цитата Сообщение от alsav22 Посмотреть сообщение
Вместе с Dev Cpp шёл.
Ссыль-то дашь или попросить?
0
MrGluck
Модератор
Эксперт CЭксперт С++
8098 / 4950 / 1434
Регистрация: 29.11.2010
Сообщений: 13,430
29.04.2013, 23:52 17
kravam,
Создать главное меню из 5 cpp файлов.работа в консольке

mingw на основе gcc-4.8.0 (последний, что niXman выкладывал).
Вы неверно что-то прописали в Compiler options, скорее всего в выборе make.
0
MrGluck
Модератор
Эксперт CЭксперт С++
8098 / 4950 / 1434
Регистрация: 29.11.2010
Сообщений: 13,430
29.04.2013, 23:54 18
kravam, а еще есть devcpp от Orwell, там mingw поновее

Добавлено через 41 секунду
http://orwelldevcpp.blogspot.de/

Добавлено через 1 минуту
Милашечка, все название перевести в латиницу
0
kravam
быдлокодер
1709 / 896 / 105
Регистрация: 04.06.2008
Сообщений: 5,542
29.04.2013, 23:57 19
А, увидел ссыль.
Надо точнее. Ибо последнее обновление Dev-Cpp аж от 21 февраля 2005 года (это по твоей ссыли написано.) И если мы туда ткнём, то попадём на такую страничку
http://www.bloodshed.net/dev/devcpp.html
, где есть три варианта скачки:

1) С компилятором 3.4.2
2) Без компилятора
3) Сырцы Dev-Cpp

Так что откуда ты взял 4.7.1- непонятно.

Добавлено через 1 минуту
Цитата Сообщение от MrGluck Посмотреть сообщение
devcpp от Orwell
очень может быть. Но ведь это ДРУГОЙ Dev-Cpp, не?
Да и не Dеv-Cpp это вовсе, а Dev-C++
0
MrGluck
Модератор
Эксперт CЭксперт С++
8098 / 4950 / 1434
Регистрация: 29.11.2010
Сообщений: 13,430
30.04.2013, 00:02 20
kravam, во-первых, я ставил dev-cpp от orwell и работал с С++11 и проекты шли нормально. Во-вторых, когда я захотел мингв поновее, я прикрутил туда minwg от nixman и продолжил работать и создавать проекты также нормально.
Разницы между cpp и с++ как между файлами 1.cpp и 1.c++ то бишь нету. И у орвелов не другой, а просто допиленный dev, куда добавили нормальный дебаггер, новый mingw и несколько тем в IDE, принцип компоновки они точно не трогали.
0
30.04.2013, 00:02
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.04.2013, 00:02

Сравнение файлов C++ .cpp и .h по средствам представления .cs файлов в C#
Доброго времени суток. Я немало времени потратил на C#. Сейчас изучаю...

Как зделать главное меню гуёвой программы?
Среда codeblocks.

Зацикливание действий: программа выходит в главное меню и снова заходит в выбранный метод записи.
Всем привет! Ребят, подскажите мне, что я написал не так в программе. При...


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

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

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