Форум программистов, компьютерный форум CyberForum.ru

Создание консоли - C++

Восстановить пароль Регистрация
 
AirLiss
 Аватар для AirLiss
1 / 1 / 0
Регистрация: 06.06.2014
Сообщений: 94
19.06.2014, 16:05     Создание консоли #1
подскажите код:

менюшка:
1. вывести на экран
2. сделать тото.
3. выйти

вопрос - как это реализуется в коде? чтоб меню появилось сразу, потом человек набрал пункт 1 и вывелось на экран то что просит? и соответственно если 2 - то выполнение такой то операции.

спасибо.
Лучшие ответы (1)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
cooller
 Аватар для cooller
564 / 532 / 120
Регистрация: 25.12.2013
Сообщений: 1,456
19.06.2014, 16:09     Создание консоли #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
AirLiss,
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
void menu()
{
    std::cout<<"1 - \n";
    std::cout<<"2 - \n";
    std::cout<<"3 - \n";
    std::cout<<"==>>";
}
 
int main()
{
    int choice;
    menu();
    switch(choice)
    {
    case 1:
        //твои действия
        break;
    case 2:
        //твои действия
        break;
    case 3:
        //твои действия
        break;
    default:
        break;
    }
 
}
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11815 / 6794 / 769
Регистрация: 27.09.2012
Сообщений: 16,867
Записей в блоге: 2
Завершенные тесты: 1
19.06.2014, 16:16     Создание консоли #3
C++
1
2
3
    int choice;
    menu();
    switch(choice)
и чему равно choice?
AirLiss
 Аватар для AirLiss
1 / 1 / 0
Регистрация: 06.06.2014
Сообщений: 94
19.06.2014, 16:18  [ТС]     Создание консоли #4
а что есть choice?

Добавлено через 1 минуту
где здесь затаилась проблема?
Кликните здесь для просмотра всего текста

C++ (Qt)
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
#include "iostream.h" 
#include "fstream.h" 
#include "stdio.h" 
#include "conio.h" 
#include "string.h" 
#define MAXLEN
#include <iostream>
#include <cstdlib> // для exit()
 
#define FNAME "baza2.txt" // имя файла 
 
void main() 
{
    std::cout<<"1 - вывод документа\n";
    std::cout<<"2 - поиск автомобиля по марке и цвету\n";
    std::cout<<"3 - поиск по номеру\n";
    std::cout<<"4 - поиск по части номера\n";
    std::cout<<"5 - Выход\n";
    std::cout<<"==>>";
}
 
int main()
{
    int choice;
    switch(choice)
    {
    case 1:
        //твои действия
        
        char fname[20] = FNAME; 
        FILE *in; // текстовый файл 
        char st[80]; // строка из файла  
        ifstream input_file("baza2.txt");
        char line[64];
        while(!input_file.eof())
        {
        input_file.getline(line,sizeof(line));
        cout<<line<<endl;
        }
        break;
    case 2:
        //твои действия
        break;
    case 3:
        //твои действия
        break;
    default:
        break;
    }
 
}


хочу проверить работоспособность первого пункта - не может, выдает ошибки:
Кликните здесь для просмотра всего текста

i:\с++\myprojects\primer1\primer1.cpp(26) : error C2556: 'int __cdecl main(void)' : overloaded function differs only by return type from 'void __cdecl main(void)'
i:\с++\myprojects\primer1\primer1.cpp(15) : see declaration of 'main'
i:\с++\myprojects\primer1\primer1.cpp(26) : error C2371: 'main' : redefinition; different basic types
i:\с++\myprojects\primer1\primer1.cpp(15) : see declaration of 'main'
i:\с++\myprojects\primer1\primer1.cpp(44) : error C2360: initialization of 'input_file' is skipped by 'case' label
i:\с++\myprojects\primer1\primer1.cpp(36) : see declaration of 'input_file'
i:\с++\myprojects\primer1\primer1.cpp(44) : error C2360: initialization of 'fname' is skipped by 'case' label
i:\с++\myprojects\primer1\primer1.cpp(33) : see declaration of 'fname'
i:\с++\myprojects\primer1\primer1.cpp(47) : error C2360: initialization of 'input_file' is skipped by 'case' label
i:\с++\myprojects\primer1\primer1.cpp(36) : see declaration of 'input_file'
i:\с++\myprojects\primer1\primer1.cpp(47) : error C2360: initialization of 'fname' is skipped by 'case' label
i:\с++\myprojects\primer1\primer1.cpp(33) : see declaration of 'fname'
i:\с++\myprojects\primer1\primer1.cpp(50) : error C2361: initialization of 'input_file' is skipped by 'default' label
i:\с++\myprojects\primer1\primer1.cpp(36) : see declaration of 'input_file'
i:\с++\myprojects\primer1\primer1.cpp(50) : error C2361: initialization of 'fname' is skipped by 'default' label
i:\с++\myprojects\primer1\primer1.cpp(33) : see declaration of 'fname'
Error executing cl.exe.

primer1.exe - 8 error(s), 0 warning(s)
Тамика
Котовчанин
 Аватар для Тамика
859 / 439 / 129
Регистрация: 16.02.2010
Сообщений: 2,537
Записей в блоге: 27
19.06.2014, 16:22     Создание консоли #5
Да что ж такое. Один неправильно пишет, второй повторяет и не думает.
Цитата Сообщение от AirLiss Посмотреть сообщение
int choice;
Как Вы думаете - чему равен choice?
Проверьте.
C++
1
2
3
4
5
6
7
8
#include <iostream>
 
int main()
{
    int choice;
    std::cout << choice;
    system("pause>>null");
}
Думаю, что свитч не одобрит такой результат.
cooller
 Аватар для cooller
564 / 532 / 120
Регистрация: 25.12.2013
Сообщений: 1,456
19.06.2014, 16:23     Создание консоли #6
Цитата Сообщение от Croessmah Посмотреть сообщение
и чему равно choice?
провтыкал
C++
1
2
int choice;
    std::cin>>choice;
AirLiss
 Аватар для AirLiss
1 / 1 / 0
Регистрация: 06.06.2014
Сообщений: 94
19.06.2014, 16:26  [ТС]     Создание консоли #7
немного не догоняю - так в правильном варианте как выглядит?...
Тамика
Котовчанин
 Аватар для Тамика
859 / 439 / 129
Регистрация: 16.02.2010
Сообщений: 2,537
Записей в блоге: 27
19.06.2014, 16:29     Создание консоли #8
У Вас два мейна. Одного вполне достаточно.
C++
1
2
3
4
5
6
7
8
9
void main() 
{
    std::cout<<"1 - вывод документа\n";
    std::cout<<"2 - поиск автомобиля по марке и цвету\n";
    std::cout<<"3 - поиск по номеру\n";
    std::cout<<"4 - поиск по части номера\n";
    std::cout<<"5 - Выход\n";
    std::cout<<"==>>";
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.06.2014, 16:44     Создание консоли
Еще ссылки по теме:

C++ считывание с консоли ( не с клавы, а именно с консоли)
Создание консоли из приложения C++
Создание приложения не в консоли C++

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

Или воспользуйтесь поиском по форуму:
AirLiss
 Аватар для AirLiss
1 / 1 / 0
Регистрация: 06.06.2014
Сообщений: 94
19.06.2014, 16:44  [ТС]     Создание консоли #9
ошибка выходит постоянно:
error C2360: initialization of 'input_file' is skipped by 'case' label
что ему надо?

Добавлено через 13 минут
получился такой пример:
Кликните здесь для просмотра всего текста

C++ (Qt)
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
// primer1.cpp : Defines the entry point for the console application.
//
 
#include "iostream.h" 
#include "fstream.h" 
#include "stdio.h" 
#include "conio.h" 
#include "string.h" 
#define MAXLEN
#include <iostream>
#include <cstdlib> // äëÿ exit()
 
#define FNAME "baza2.txt" // èìÿ ГґГ*éëГ* 
 
int prompt_menu_item()
{
int variant;
    cout << "Âûáåðèòå ГўГ*ðèГ*Г*ГІ\n" << endl;
    cout << "1. ïðîñìîòðåòü ñîäåðæèìîå\n"
         << "2. ïîèñê Г*âòîìîáèëÿ ГЇГ® Г¬Г*ðêå ГЁ öâåòó\n"
         << "3. ïîèñê ГЇГ® Г*îìåðó\n"
         << "4. ïîèñê ГЇГ® Г·Г*Г±ГІГЁ Г*îìåðГ*\n"
         << "5. âûéòè\n" << endl;
    cout << ">>> ";
    cin >> variant;
    return variant;
}
 
 
int main(void)
{
    int variant = prompt_menu_item();
    switch (variant) 
    {
        case 1:
         //òâîè äåéñòâèÿ
        
    
        {
        char fname[20] = FNAME; 
        FILE *in; // òåêñòîâûé ГґГ*éë 
        char st[80]; // ñòðîêГ* ГЁГ§ ГґГ*éëГ*  
        ifstream input_file("baza2.txt");
        char line[64];
        while(!input_file.eof());
        
        input_file.getline(line,sizeof(line));
        cout<<line<<endl;
        }
        break;
    case 2:
        //òâîè äåéñòâèÿ
        
            ;
        
        break;
    case 3:
        //òâîè äåéñòâèÿ
        
            ;
        
        break;
    default:
    cerr << "Âû âûáðГ*ëè Г*ГҐГўГҐГ°Г*ûé ГўГ*ðèГ*Г*ГІ" << endl;
    exit(EXIT_FAILURE);
    }
    return 0;
}


да, на экран выводится менюшка, но почему то не читается/не выполняется в данном случае пункт 1...
почему?
Yandex
Объявления
19.06.2014, 16:44     Создание консоли
Ответ Создать тему
Опции темы

Текущее время: 20:45. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru