Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Показать сообщение отдельно
DigsiL
10 / 10 / 3
Регистрация: 14.01.2011
Сообщений: 113
18.06.2011, 21:05  [ТС] 0

Ошибка при завершении программа.

18.06.2011, 21:05. Просмотров 1922. Ответов 47
Метки (Все метки)

Ответ

Цитата Сообщение от silentnuke Посмотреть сообщение
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
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
#include <iostream>
#include <Windows.h>
using namespace std;
class CBook
{
public:
    CBook(void);
    void Input(char *author1,char *title1);
    void Show ();
    ~CBook(void);
private:
    char *author;
    char *title;
};
CBook::CBook(void)
{
    author=NULL;
    title=NULL;
}
void CBook::Input(char *author1,char *title1)
{
    author=new char [strlen(author1)+1];
    strcpy(author,author1);
    title=new char [strlen(title1)+1];
    strcpy(title,title1);
 
}
void CBook::Show()
{
    cout<<"Автор:"<<author<<endl;
    cout<<"Название книги:"<<title<<endl;
}
 
CBook::~CBook(void)
{
    if(author!=NULL&&title!=NULL)
    {
        delete []author;        
        delete []title;
    }
}
 
void AddBook(CBook *&book,int &size)
{
    CBook *temp=new CBook [++size];
    for (int i=0;i<size;i++)
    {
        temp[i]=book[i];
    }
    book=new CBook [size];
    for (int i=1;i<=size-1;i++)
    {
        book[i]=temp[i];
    }
}
void main()
{
    SetConsoleOutputCP(1251);
    SetConsoleCP(1251);
    char author[20];
    char title[20];
    int key=0;
    int size=0;
    CBook *book;
    do
    {
        cout<<"1.Добавить книгу"<<endl;
        cout<<"2.Вывести книги"<<endl;
        cout<<"0.Выход"<<endl;
        cin>>key;
        switch (key)
        {
        case 1:
            {
                cin.ignore();
                cout<<"Введите Автора:";
                cin.getline(author,20);
                cout<<"Введите название книги:";
                cin.getline(title,20);
                if (size>0)
                {
                    AddBook(book,size);
                }
                else 
                {
                    book=new CBook[++size];
                }
                book[size-1].Input(author,title);
            }break;
        case 2:
            {
                for (int i=0;i<size;i++)
                {
                    book[i].Show();
                }
            }break;
        case 0:
            {
                delete []book;
                return;
            }break;
        }
 
    }while(key);
}
У меня Код сработал неправильно именно при 2 добавлении объекта пробую выводить и тут ошибка

Вернуться к обсуждению:
Ошибка при завершении программа.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.06.2011, 21:05
Готовые ответы и решения:

Ошибка при завершении программа.
Проблема в следующим когда я создаю 3 объект case 1 и пробую после этого...

Visual studio: консольная программа закрывается при завершении
На некоторых студиях приходится в конце программы писать system(&quot;pause&quot;); что...

Ошибка при завершении программы
Добрый вечер! Помогите плиз, у меня после завершения программы она зависает......

ошибка при завершении программы
возникает ошибка при завершении программы. при чем после вывода на экран...

Ошибка при завершении работы программы
Написал программу, но при завершении выдает ошибку. Помогите понять с чем это...

47
Другие темы раздела
C++ целое число К http://www.cyberforum.ru/cpp-beginners/thread322256.html
Дано целое число К. Вывести строку описания оценки, соответсвующей числу К(1-плохо, 2-неудовлетворительно, 3-удовлетворительно, 4-хорошо, 5-отлично). Если К не лежит в диапозоне от 1 до 5 то вывести...
C++ Создание двоичного файла Такая заморочка,нужно создать двоичный файл,вроде сделал все по правилам,но преподу не нравится,то что последовательность цифр в двоичном файле не должна отображаться в виде цифр,а должна... http://www.cyberforum.ru/cpp-beginners/thread322252.html
C++ считать с файла через ентер
Здравствуйте! Если считывать с файла вот так: freopen("input.txt", "r", stdin); freopen("output.txt", "w", stdout); cin>>a>>b; то считается вот так, если число-пробел-число а если...
C++ подскажите как вывести позицию элемента
#include "stdafx.h" # include <iostream> # include <conio.h> # include <Windows.h> using namespace std; int main () { setlocale (LC_CTYPE, "Russian"); int n,k,v,m;
C++ как откинуть последнюю цифру от фисла? http://www.cyberforum.ru/cpp-beginners/thread322190.html
здравствуйте есть число: 399 995 надо получить 39 999 надо откинуть последнюю цифру...
C++ Вопрос экзамена: Подскажите свои соображения по-поводу вопросов: -Использование файлов, при создании програм.Определить для чего используються константы : GENERIC_READ и тд. тп. (ну если с консантами все ясно, то... подробнее
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru