Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 22.06.2015
Сообщений: 1
1

Ошибка динамической памяти при компиляции

22.06.2015, 00:40. Показов 627. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
При нажатии баттона не компилирует по памяти, в чем может быть ошибка?
Во вложение картинка ошибки.

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
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
#include <vcl.h>
#pragma hdrstop
 
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
int n=3;
int m=4;
void Poisk(int**,int,int,int*,int*);
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::Edit1Change(TObject *Sender)
{
int i;
if(Edit1->Text == "")
        Edit1->Text = "3";
n=StrToInt(Edit1->Text);
 
        StringGrid1->ColCount = m+1;
    StringGrid1->RowCount = n+1;
 
                for(i=1; i<=n;i++){
                StringGrid1->Cells[0][i]="i="+IntToStr(i);
                StringGrid1->Cells[i][0]="j="+IntToStr(i);
            }
                for(int i=1; i<=n;i++)
                for(int j=1; j<=n;j++)
                       StringGrid1->Cells[j][i]= random(21)-10;
 
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Edit2Change(TObject *Sender)
{
int i;
if(Edit2->Text == "")
        Edit2->Text = "4";
m=StrToInt(Edit2->Text);
 
        StringGrid1->ColCount = m+1;
    StringGrid1->RowCount = n+1;
 
                for(i=1; i<=m;i++){
                StringGrid1->Cells[0][i]="i="+IntToStr(i);
                StringGrid1->Cells[i][0]="j="+IntToStr(i);
            }
                for(int i=1; i<=m;i++)
                for(int j=1; j<=m;j++)
                       StringGrid1->Cells[j][i]= random(21)-10;
}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::FormCreate(TObject *Sender)
{
Edit1->Text=IntToStr(n);
Edit2->Text=IntToStr(m);
 
        StringGrid1->ColCount = m+1;
        StringGrid1->RowCount = n+1;
        StringGrid1->Cells[0][0] = "Ìàòðèöà";
 
                for(int i=1; i<=n;i++){
                StringGrid1->Cells[0][i]="i="+IntToStr(i);
                StringGrid1->Cells[i][0]="j="+IntToStr(i);
                }
        for(int i=1; i<=n;i++)
                for(int j=1; j<=n;j++)
                       StringGrid1->Cells[j][i]= random(21)-10;
 
}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::Button1Click(TObject *Sender)
{
        int **a;                    // Äåêëàðàöèÿ óêàçàòåëåé
        int i, j, sum, kol;
        a = new int*[n];
        for(i=0; i<n;i++)
        a[i] = new int[n];
 
        for(i=0; i<n;i++)
        for(j=0; j<m;j++)
        
        a[i][j]=StrToInt(StringGrid1->Cells[j+1][i+1]);
 
        Poisk (a,n,m,&sum,&kol);
 
Memo1->Lines->Add(IntToStr(sum));
Memo1->Lines->Add(IntToStr(kol));
 
for(i=0; i<n; i++)
delete []a[i]; 
delete []a;
 
}
//---------------------------------------------------------------------------
void Poisk(int**a,int n,int m,int*sum,int*kol)
{
 
int i,j;
 
*sum=0;
*kol=0;
 
for(i=0; i<n; i++)
for(j=0; j<m; j++)
 
if (a[i][j]<0)
{
*sum+=a[i][j];
}
 
for(i=0; i<n; i++)
for(j=0; j<m; j++)
 
if (a[i][j]>0)
{
*kol=a[i][j];
*kol++;
}
}
Миниатюры
Ошибка динамической памяти при компиляции  
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.06.2015, 00:40
Ответы с готовыми решениями:

Ошибка очистки динамической памяти
Добрый день! Пожалуйста подскажите? что я делаю не так? Записываю небольшой текст в RichEdit,...

Ошибки памяти при расширенной компиляции
нет ошибки при компиляции и при работе приложения, когда компилирую в режиме теста (то есть не...

C++ ошибка кода Segmentation fault при динамической памяти
помогите пожалуйста. задание такое: нужна программа которая хранит название страны с медалями и...

Ошибка при компиляции(Тестирование памяти)
error C3861: 'ReadMemory': identifier not found(на MSDN написано что нужно подключить то та-то)...

2
Модератор
3401 / 2172 / 353
Регистрация: 13.01.2012
Сообщений: 8,410
22.06.2015, 10:44 2
при появлении ошибки откройте окно View/Debug windows/Call stack и посмотрите откуда она взялась. хотя у вас не такая программа что бы потеряться и вы сами знаете на какую кнопку вы нажали или что сделали что бы программа у вас слетела. запускаете в пошаговом режиме и смотрите что там вычисляется и на каком этапе крашится
0
Модератор
9457 / 6210 / 2420
Регистрация: 21.01.2014
Сообщений: 26,471
Записей в блоге: 3
22.06.2015, 14:14 3
Проверяй свою функцию Poisk()
0
22.06.2015, 14:14
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.06.2015, 14:14
Помогаю со студенческими работами здесь

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

Ошибка при попытке разыменовать указатель, который размещен в динамической памяти другим процессом
Доброго времени суток. Есть родительский процесс, он запускает через createProcess дочерний...

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

Ошибка динамической компиляции
private void button1_Click(object sender, EventArgs e) { string source =...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru