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

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

Войти
Регистрация
Восстановить пароль
 
Fastex
1 / 1 / 0
Регистрация: 01.03.2010
Сообщений: 46
#1

Ошибка структуры с динамическим массивом - C++

01.03.2010, 16:34. Просмотров 722. Ответов 1
Метки нет (Все метки)

Описал структуру, содержащую динамический массив. По сути получился динамический массив динамических массивов:


C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
main()
{
int i,j,ColYe;
ColYe=5;
 
struct rest {int size, *bufmtx;};
rest *mass = new rest[ColYe-1];
for(int j=1; j<ColYe-1; j++)
mass[j].bufmtx = new int [ColYe-j];
 
for(i=1;i<=ColYe-1;i++)
{
                       for(j=1;j<=ColYe-j;j++)
                       {
                                  mass[i].bufmtx[j]=j;            
                       }
}
return 0;
}
При выполнении программы вылетает ошибка системная. Не знаю, в чем проблема, и как решить. Кто - нибудь знает что тут такое ?

Пробовал писать то же самое в Borland C++ builder 6.0 , Если запустить из компиллятора, то программа отрабатывает, причем правильно, а после закрытия ее вылетает ошибка борланда: "Project Project2.exe raised exception dass EAccessViolation with message 'Access violation at address 00401D55 in module 'Project2.exe'. Write of address 00000017. Process stopped. Use Step or Run to continue."

А если запустить сам ехешник, то вылетает тоже системная ошибка. Подскажите, пожалуйста, что я неправильно делаю ?

Всем заранее спасибо !
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.03.2010, 16:34     Ошибка структуры с динамическим массивом
Посмотрите здесь:

возникнут ли последствия с динамическим массивом C++
Проблема с динамическим массивом C++
C++ Класс с динамическим массивом
C++ Дополнить класс динамическим массивом
Ошибка при работе с динамическим массивом C++
C++ Класс с содержащимся динамическим массивом
C++ Ошибка при работе с динамическим массивом
Работа с динамическим массивом C++
Ошибка связанная с Динамическим массивом C++
C++ Работа с динамическим массивом
C++ Странность с динамическим массивом
Работа с динамическим двумерным массивом C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
DragoDemon
2 / 2 / 0
Регистрация: 18.11.2009
Сообщений: 43
01.03.2010, 21:41     Ошибка структуры с динамическим массивом #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
main()
{
int i,j,ColYe;
ColYe=5;
 
struct rest {int size, *bufmtx;};
rest *mass = new rest[ColYe-1];
for(int j=1; j<ColYe-1; j++)
mass[j].bufmtx = new int [ColYe-j];
 
for(i=1;i<ColYe-1;i++)
{
                       for(j=1;j<ColYe-j;j++)
                       {
                                  mass[i].bufmtx[j]=j;            
                       }
}
return 0;
}
P.S. ошибка была в выходе за пределы объявления
Yandex
Объявления
01.03.2010, 21:41     Ошибка структуры с динамическим массивом
Ответ Создать тему
Опции темы

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