Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
0 / 0 / 0
Регистрация: 12.10.2009
Сообщений: 5
1

Масивы С/С++

20.10.2009, 02:58. Показов 1346. Ответов 13
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Подскажите пожалуйста, как в С создать массив А[1000][1000], при этом что бы выполнялась программа без ошибок. Потому что компиляция происходит отлично, но сама программа выдает ошибку, при меньшем массиве - например А[100][100] - все отлично. Спасибо за помощь.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.10.2009, 02:58
Ответы с готовыми решениями:

Масивы
В квадратном массиве заданы целые числа. Определить количество элементов главной диагонали. только...

2-D масивы.
Помогите! Написать программу в С++ которая будет проверять является ли 2-д масив маг.квадратом,у...

Масивы
Приветик помогите решить прошку пожалуста У прилавка магазина выстроилась очередь из n...

Масивы
Здраствуйте! Если есть минутка свободного времени, помогите решить задачу: росположить елементы...

13
4 / 4 / 1
Регистрация: 06.10.2009
Сообщений: 37
20.10.2009, 03:19 2
Я конечно не специалист, но может просто массив за большой?
0
0 / 0 / 0
Регистрация: 12.10.2009
Сообщений: 5
20.10.2009, 03:56  [ТС] 3
Это условие задания, должен поддерживаться 1000*1000. Как реализовать такую возможность?
0
4 / 4 / 1
Регистрация: 06.10.2009
Сообщений: 37
20.10.2009, 04:08 4
Порылся по Другим форумам нашел везде Одно и тоже решения
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
#include "stdafx.h"
#include <conio.h>
#include <iostream>
 
using namespace std;
 
int main()
{
    int max_size=1000;
    int** myArr=new int*[max_size];
    for(int i=0;i<max_size;i++)
        myArr[i]=new int[max_size];
    for(int i=0;i<max_size;i++)
        for(int j=0;j<max_size;j++)
            myArr[i][j]=i+j;
    for(int i=0;i<max_size;i++)
    {
        for(int j=0;j<max_size;j++)
            if(i>990)cout<<myArr[i][j]<<" ";
        cout<<"\n";
    }
    getch();
    delete [] myArr;
    return 0;
}
0
0 / 0 / 0
Регистрация: 12.10.2009
Сообщений: 5
20.10.2009, 15:50  [ТС] 5
Спасибо за помощь, попробую что-то из этого придумать
0
MCSD: APP BUILDER
8794 / 1073 / 104
Регистрация: 17.06.2006
Сообщений: 12,602
20.10.2009, 16:06 6
увеличить размер стека программы.
конкретные опции искать в справочном руководстве к используемому компилятору
0
8 / 8 / 0
Регистрация: 21.09.2009
Сообщений: 84
20.10.2009, 18:53 7
Можно попутный вопрос?
Нас на лекциях по Паскалю учили, что сегмент данных - 65 килобайт.
Каким образом на С++ удаётся нормально запускать такие проги, как приведена ниже?
Или сегменты данных "умерли" вместе с Паскалем?
Спасибо.
C++
1
2
3
4
5
6
7
8
9
10
11
#include <iostream>
 
using namespace std;
 
  int a[10000][10000]={0};
 
int main(void)
{
  a[9999][9999]=9999;
  cout<<"+"<<sizeof(a)<<"+"<<a[9999][9999] ;
}
0
MCSD: APP BUILDER
8794 / 1073 / 104
Регистрация: 17.06.2006
Сообщений: 12,602
21.10.2009, 00:10 8
Ketino,
Или сегменты данных "умерли" вместе с Паскалем?
сегменты (любые) умерли вместе с 16-разрядными операционными системами (MS-DOS, Windows 3.x, OS/2 1.x)
0
6 / 6 / 0
Регистрация: 29.09.2009
Сообщений: 41
21.10.2009, 13:57 9
Вообще то сегментация памяти вытекала из архитектуры процессора а не из операционной системы
0
MCSD: APP BUILDER
8794 / 1073 / 104
Регистрация: 17.06.2006
Сообщений: 12,602
21.10.2009, 14:02 10
Chea,
Вообще то сегментация памяти вытекала из архитектуры процессора а не из операционной системы
А где-то утверждалось обратное?
0
6 / 6 / 0
Регистрация: 29.09.2009
Сообщений: 41
21.10.2009, 14:09 11
Цитата Сообщение от Rififi Посмотреть сообщение
Ketino,
Или сегменты данных "умерли" вместе с Паскалем?
сегменты (любые) умерли вместе с 16-разрядными операционными системами (MS-DOS, Windows 3.x, OS/2 1.x)
---
0
MCSD: APP BUILDER
8794 / 1073 / 104
Регистрация: 17.06.2006
Сообщений: 12,602
21.10.2009, 14:13 12
Очень интересная логика увязывания одного за другое. Ты не женщина там, часом?
0
6 / 6 / 0
Регистрация: 29.09.2009
Сообщений: 41
21.10.2009, 14:32 13
А ты???

Разрядность операционной системы не влияет на наличие мех-ма сегментации памяти
В твоем ответе все зависит от разрядности ОС.
0
Заблокирован
Автор FAQ
21.10.2009, 15:56 14
Я думаю если не важно быстродействие то можно вбить элементы массива в файл а потом из него читать. При этом даже отпадёт надобность в самом массиве, просто забить функцию аля int getelement(int i, int j) - возвращаемым значением которой будет элемент массива с соотв индексами, сам элемент будет считываться из файла. С модификацией элемента по сложнее, тут прийдётся создавать два временных файла - 1-й с элементами до модифицуремого элемента, 2 - й с элементами поле него, а затем перезаписывать исходный файл данными из этих файлов + между ними модифицтрованный элемент.......(это лишь мой взгляд на проблему)
0
21.10.2009, 15:56
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.10.2009, 15:56
Помогаю со студенческими работами здесь

масивы
сортировки массива методом пузырька и методом прямого включения Програмы нужны в Microsoft visual...

С++ Масивы
Помогите написать 3 программы по этим заданиям в С++! В одномерном массиве, который состоит из n...

Масивы
Помогите сделать задачу по С++. Создать массив. Вывести массив в общепринятом виде. Превратить...

C++ масивы
Начал решать задачу, вот условие: Дан целочисленный массив размера N. Удалить из массива все...


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

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