С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
den4ik_fpmi
1 / 1 / 1
Регистрация: 20.10.2012
Сообщений: 166
#1

ошибка debug assertion failed - C++

11.11.2013, 18:58. Просмотров 494. Ответов 2
Метки нет (Все метки)

при выполнении программы происходит ошибка debug assertion failed,
а именно попытке завершить работу программы
вот код
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
#define _CRT_SECURE_NO_WARNINGS
#include"tab.h"
 
void main()
{
    setlocale(LC_CTYPE,"Russian");
    FILE *f=fopen("input.txt","r");
    int i,fl=0,y,s1,z1,z2,z3,z4,z5,z6,z7,z8,z9,z10,z11,z12,z13,z14; bool flag=1;
    square sq;
    tab Table;
    HWND hwnd=GetConsoleWindow();
    HDC hdc=GetDC(hwnd);
    MoveWindow(hwnd,0,0,800,730,TRUE);
    RECT rt;
    srand(time(0));
    GetClientRect(hwnd,&rt);
    Table.load_data(f,rt);
    fclose(f);
    do{
                printf("<1> - добавить эемент в таблицу\n");
                printf("<2> - извлечь элемент из таблицы\n");
                printf("<3> - поис элемента в таблице\n");
                printf("<4> - распечатка элементов таблицы\n");
                printf("<5> - выход\n");
                scanf("%d",&i);
                switch(i)
            {   case 1: y=0;
                        printf("тип фигуры(1 - фигура-контур;2 - закрашенная фиура; 3 - две вложенных фигуры");
                        scanf("%d",&s1);
                        printf("введите координаты внешней фигуры\n");
                        scanf("%d %d %d %d",&z1,&z2,&z3,&z4);
                        printf("введите координаты внутренней фигуры\n");
                        scanf("%d %d %d %d",&z5,&z6,&z7,&z8);
                        printf("введите параметры цвета пера\n");
                        scanf("%d %d %d",&z9,&z10,&z11);
                        printf("введите параметры цвета кисти\n");
                        scanf("%d %d %d",&z12,&z13,&z14);
                        sq.set_figure(s1);
                        sq.set_coord(z1,z2,z3,z4,rt);
                        sq.set_in_coord(z5,z6,z7,z8,rt);
                        sq.set_pen(z9,z10,z11);
                        sq.set_brush(z12,z13,z14);
                        try{ sq.check_in_square(); sq.check_in_wind(rt); sq.check_square(); sq.check_square_in();   }
                            catch(int error)
                                {
                                    if (error==1)   {
                                                        printf("внешняя фигура не является квадратом\n");
                                                        y++;}
                                    if (error==2)   {
                                                        printf("внутренняя фигура не вложена во внешнюю\n");
                                                            y++;    }
                                    if (error==3)   {
                                                        printf("фигура не может быть вписана в окно\n");
                                                            y++;}
                                    if (error==4)   {
                                                        printf("внутренняя фигура не является квадратом\n");
                                                        y++;    }           
                                        }
                        if (y==0) Table.add_elem(sq);   
                        break;
                case 2: int kl; bool p;
                        printf("введте ключ элемента который необходимо извлечь\n");
                        scanf("%d",&kl);
                        p=Table.out_of_tab(&sq,kl);
                        if(p==false) printf("элемент не был найден в таблице\n");
                        else {  printf("элемент успешно извлечен, нарисовать элемент?\n 1 - нарисовать\n2 - нет\n");
                                scanf("%d",&kl);
                                if(kl==1) sq.select_draw(hdc);}
                        break;
                case 3: int k;bool rez;
                        printf("введите ключ элемента который необходимо искать в таблице\n");
                        scanf("%d",&k);
                        rez=Table.search(k);
                        if (rez==true) printf("элемент с ключом %d в таблице есть\n",k);
                        else printf("элемента с ключом %d в таблице нет\n",k);
                        break;
                case 4: Table.print(hdc);
                        break;
                case 5: flag=false;
                        break;
                        }
    }
    while(flag==true);
ReleaseDC(hwnd,hdc);
    }
когда в меню выбираю 5, т.е. завершить работу программы то вылетает ошибка описанная выше, иже скрин
0
Миниатюры
ошибка debug assertion failed  
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.11.2013, 18:58
Здравствуйте! Я подобрал для вас темы с ответами на вопрос ошибка debug assertion failed (C++):

Ошибка Debug Assertion Failed - C++
Доброго времени суток, срочно нужна помощь, такая проблема: есть программа шифрования методом Гронсфельда по английскому алфавиту, для...

Ошибка выполнения: Debug assertion failed - C++
Возникла такая ошибка,никто не сталкивался? Читал что-то про нее,но что-то непонятно... Может кто сталкивался или знает как исправить? ...

Ошибка компиляции (Debug Assertion Failed) - C++
Ребят помоги, что не так в этом коде? Выдает вот эту ошибку http://i051.***********/1307/bf/dffff7cb08e5.png #include &quot;stdafx.h&quot; ...

Ошибка debug assertion failed, как избавиться? - C++
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;string.h&gt; #include &lt;conio.h&gt; #include &lt;stdlib.h&gt; #define n 50 #include...

При вызове деструктора возникает ошибка Debug Assertion Failed! - C++
вот код программы #include &lt;iostream&gt; #include &lt;conio.h&gt; using namespace std; class String { private:

Ошибка при выводе в текстовый файл (Debug assertion failed) - C++
Значит, такая ситуация: Надо с помощью разложения в ряд Тейлора посчитать арктангенс и вывести результаты в текстовый файл, при чем...

2
den4ik_fpmi
1 / 1 / 1
Регистрация: 20.10.2012
Сообщений: 166
11.11.2013, 19:12  [ТС] #2
обовление: нашел в чем ошибка, когда убрал деструктор то все стало норм, теперь помогите написать деструктор, у меня такой вот класс:
C
1
2
3
4
class tab
{ private: 
    int kol_el;
    tab_elem tab_1[N];
0
alsav22
5428 / 4823 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
11.11.2013, 21:39 #3
Вообще-то, для такого класса достаточно деструктора по умолчанию, нужно только увидеть, что из себя представляет tab_elem. Ваш деструктор, как выглядел?
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.11.2013, 21:39
Привет! Вот еще темы с ответами:

Debug Assertion Failed - C++
Создавал небольшой генератор ролей для персонажа и натолкнулся на проблему пиктрелейтед. До определенного момента все работало, пока я не...

Debug Assertion Failed - C++
Ошибка. Не могу понять что не так. Как я понял с дебагера, проблема во втором освобождении памяти. Вообщем хелп ми) // hw_3.cpp :...

Debug assertion failed - C++
Во время отладки вылазит такая ошибка,не могу понять в чём дело

Debug assertion failed - C++
#include &lt;iostream&gt; using namespace std; class Employee { friend class Leader; private: char m_name; char m_no; public: ...


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

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

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