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

Остановить закрытие консоли по завершению работы программы - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.92
Андрей Хоменко
0 / 0 / 0
Регистрация: 13.06.2014
Сообщений: 7
20.06.2014, 13:41     Остановить закрытие консоли по завершению работы программы #1
Работая на вижуал студие.Проблемы с getch менял на system pause,ничерта...
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
78
79
80
81
82
83
84
85
86
87
88
#include "stdafx.h"
#include<iostream>
#include<iomanip>
#include<conio.h>
#include <ctype.h>
#include<string.h>
using namespace std;
struct data{
    char user_name[15];
    char address[20];
    char phone[8];
};
data directory[10];
int number;
int middle;
char name[15];
bool flag;
int key;
void create();
void print();
void sort();
void BinSearch(int left,int right);
void create()
{
    int i;
    cout<<"enter directory data"<<endl;
    i=0;
    do{
        cout<<"name: "; cin>>directory[i].user_name;
        cout<<"address: "; cin>>directory[i].address;
        cout<<"tel: "; cin>>directory[i] .phone;
        i++;
        cout<<"continue? y/"<<endl;
        key=getch();
    }
    while ((key!='n')&&(key!='N'));
    number=i;
}
void print()
{
    cout<<"------User name-------address-----telephone----"<<endl;
        for(int i=0;i<number;i++)
        {
            cout<<setw(10)<<directory[i].user_name;
            cout<<setw(14)<<directory[i].address;
            cout<<setw(14)<<directory[i].phone<<endl;
        }
}
void BinSearch (int left,int right)
{
    if(left>right)
        flag=false;
    else
    {
        middle=(left+right) / 2;
        if (strcmp(name,directory[middle].user_name)==0)
    flag=true;
        else if (strcmp(name,directory[middle].user_name)<0)
            BinSearch(left,middle-1);
        else BinSearch(middle+1,right);
    }
}
int main()
{
    cout<<"telephone directory"<<endl;
    create();
    cout<<"array of input records"<<endl;
        print();
    sort();
    cout<<"array of records after sort"<<endl;
    print();
    do
    {
        cout<<"enter name for serach:"<<endl;
        cin>>name;
        BinSearch(0,number-1);
        if(flag)
            cout<<"item="<<middle<<" user name->"
            <<directory[middle].user_name
            <<" phone->"<<directory[middle].phone<<endl;
        else cout<<"record not found"<<endl;
cout<<"press ESC for finish or any key to continue "<<endl;
key=getch();
 
}
    while (key!=27); 
system("pause");
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.06.2014, 13:41     Остановить закрытие консоли по завершению работы программы
Посмотрите здесь:

C++ Задержать закрытие окна консоли после выполнения программы
закрытие консоли C++
закрытие консоли C++
Принудительное закрытие консоли C++
C++ остановить выполнение программы после обработки исключения
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
_include
Студент
 Аватар для _include
52 / 52 / 12
Регистрация: 17.09.2012
Сообщений: 291
Записей в блоге: 2
Завершенные тесты: 1
20.06.2014, 13:58     Остановить закрытие консоли по завершению работы программы #2
stdlib.h - отвечает за system
Может быть так, что какая-то функция не возвращается в main. Посмотрите точками останова, там где консоль захлопывается пропишите _getch();
Tulosba
:)
Эксперт С++
4378 / 3221 / 297
Регистрация: 19.02.2013
Сообщений: 9,046
20.06.2014, 16:59     Остановить закрытие консоли по завершению работы программы #3
Андрей Хоменко, так а код вообще собирается? с sort() не пойми что.
alexkrou
Сообщений: n/a
20.06.2014, 17:02     Остановить закрытие консоли по завершению работы программы #4
Попробуйте добавить getch()
zss
Модератор
Эксперт С++
 Аватар для zss
5942 / 5547 / 1783
Регистрация: 18.12.2011
Сообщений: 14,165
Завершенные тесты: 1
20.06.2014, 17:09     Остановить закрытие консоли по завершению работы программы #5
В Вашем коде нет реализации sort()
Если ее закомментировать, то все работает как надо - с ожиданием!
Андрей Хоменко
0 / 0 / 0
Регистрация: 13.06.2014
Сообщений: 7
20.06.2014, 17:13  [ТС]     Остановить закрытие консоли по завершению работы программы #6
Я просто открыл в билдере и удалил sort и всё норм,спасибо за ответы
Yandex
Объявления
20.06.2014, 17:13     Остановить закрытие консоли по завершению работы программы
Ответ Создать тему
Опции темы

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