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

ошибка после запуска программы! - C++

Восстановить пароль Регистрация
 
coder2
1 / 1 / 0
Регистрация: 01.03.2014
Сообщений: 312
01.03.2014, 15:27     ошибка после запуска программы! #1
#include <stdio.h>
#include <conio.h>
#include<iostream>
using namespace std;

int main()
{
int a[1000][1000],n,max,uzero;
cin>>n;
for(int i=0;i<n;i++)
for(int j=0;j<n;j++)
cin>>a[i][j];

for(int i=0;i<n;i++)
{max=a[i][0];uzero=-1;
for(int j=0;j<n;j++)
{
if(a[i][j]>max) max=a[i][j];
if(uzero==-1&&a[i][j]<0) uzero=j;
}
a[i][n]=max;
a[i][n+1]=uzero;
}

for(int i=0;i<n;i++)
{
for(int j=0;j<n+2;j++)
cout<<a[i][j]<<' ';
cout<<endl;
}
return 0;
}

Сам код.
Ничего не выполняется и во второй строке ошибка:
"Process exited with return value 3221225725"
Помогите, в чем проблема!
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ALEXey__
7 / 7 / 2
Регистрация: 10.02.2014
Сообщений: 70
01.03.2014, 15:32     ошибка после запуска программы! #2
coder2, у меня ругался на отсутствие такой библиотеки:
../src/hil.cpp:2:19: fatal error: conio.h: Нет такого файла или каталога
Удалил вторую строку, и все запустилось:
ошибка после запуска программы!
mustimur
268 / 222 / 57
Регистрация: 22.11.2013
Сообщений: 832
Записей в блоге: 1
01.03.2014, 15:35     ошибка после запуска программы! #3
Ваша основная ошибка здесь:
Цитата Сообщение от coder2 Посмотреть сообщение
int a[1000][1000]
В стеке (в него попадают статические массивы) по умолчанию нельзя выделить такой объем памяти подряд. Решение:
1) НЕПРАВИЛЬНОЕ: увеличить размер стека в настройках компилятора;
2) Разместить массив на куче (сделать его динамическим)
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
#include <stdio.h>
#include <conio.h>
#include<iostream>
using namespace std;
 
int main()
{
int **a,n,max,uzero;
 
cin>>n;
a=new int* [n];
for(int i=0;i<n;i++) a[i]=new int[n];
for(int i=0;i<n;i++)
for(int j=0;j<n;j++)
cin>>a[i][j];
 
for(int i=0;i<n;i++)
{max=a[i][0];uzero=-1;
for(int j=0;j<n;j++)
{
if(a[i][j]>max) max=a[i][j];
if(uzero==-1&&a[i][j]<0) uzero=j;
}
a[i][n]=max;
a[i][n+1]=uzero;
}
 
for(int i=0;i<n;i++)
{
for(int j=0;j<n+2;j++)
cout<<a[i][j]<<' ';
cout<<endl;
}
 
for(int i=0;i<n;i++) delete [] a[i];
delete []a;
return 0;
}
coder2
1 / 1 / 0
Регистрация: 01.03.2014
Сообщений: 312
01.03.2014, 15:39  [ТС]     ошибка после запуска программы! #4
ALEXey__, у меня все так же, system("pause") добавлял, не знаю, не помогает

Добавлено через 2 минуты
mustimur, Все четко, спасибо огромное
mustimur
268 / 222 / 57
Регистрация: 22.11.2013
Сообщений: 832
Записей в блоге: 1
01.03.2014, 15:42     ошибка после запуска программы! #5
Цитата Сообщение от coder2 Посмотреть сообщение
system("pause")
нужна чтоб консоль сразу не закрывалась..Запуск некоторого ожидания
Yandex
Объявления
01.03.2014, 15:42     ошибка после запуска программы!
Ответ Создать тему
Опции темы

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