0 / 0 / 0
Регистрация: 09.10.2014
Сообщений: 24
|
||||||||||||||||
1 | ||||||||||||||||
Создать массив из 1 000 000 000 и более элементов, а потом заполнить и вывести его21.09.2015, 08:18. Показов 1739. Ответов 10
Метки нет (Все метки)
создаю массив, и все идет нормально
после a[i] = rand()%20; возникает необработанное исключение а если убрать заполнение, то с printf("%llu ", a[i]); та же история. Что я делаю не так? Как создать массив из 1 000 000 000 и более элементов , а потом заполнить и вывести его? Буду очень благодарен любым вашим ответам.
0
|
21.09.2015, 08:18 | |
Ответы с готовыми решениями:
10
Создать вещественный массив из 10 000 чисел , заполнить его случайными числами в диапазоне от 0 до 1 . Вычислить Найти вероятность того,что из 10 000 машин будет не менее 8 000 и не более 8050 исправных Как создать 1 000 000 строк без совпадений? Вывести содержимое 5 000 000 страниц, а парсер останавливается на 400 |
161 / 122 / 85
Регистрация: 16.10.2013
Сообщений: 1,738
|
||||||
21.09.2015, 08:47 | 2 | |||||
Во первых
0
|
0 / 0 / 0
Регистрация: 09.10.2014
Сообщений: 24
|
|
21.09.2015, 08:50 [ТС] | 3 |
не знаю.. итак же работало, ничего не изменилось.
0
|
161 / 122 / 85
Регистрация: 16.10.2013
Сообщений: 1,738
|
||||||
21.09.2015, 08:54 | 4 | |||||
green_man,
дофига / 1024 / 1024 = 762.939453 мб оперативной памяти под массив Для числа 1 000 000 000 думаю ясно что будет 7.6 гб Добавлено через 26 секунд green_man, теперь ясно почему ошибка?
1
|
0 / 0 / 0
Регистрация: 09.10.2014
Сообщений: 24
|
|
21.09.2015, 08:57 [ТС] | 5 |
но ведь ошибка после первого вхождения в цикл for()
0
|
161 / 122 / 85
Регистрация: 16.10.2013
Сообщений: 1,738
|
|
21.09.2015, 08:58 | 6 |
green_man, память мы в массиве заполняем
0
|
0 / 0 / 0
Регистрация: 09.10.2014
Сообщений: 24
|
||||||
21.09.2015, 09:06 [ТС] | 7 | |||||
не понимаю.
Если не писать
0
|
161 / 122 / 85
Регистрация: 16.10.2013
Сообщений: 1,738
|
|
21.09.2015, 09:07 | 8 |
green_man, на практике проверь, у тебя есть "Диспетчер задач")
0
|
0 / 0 / 0
Регистрация: 09.10.2014
Сообщений: 24
|
|
21.09.2015, 09:16 [ТС] | 9 |
ну да
0
|
21.09.2015, 09:27 | 10 |
Сообщение было отмечено green_man как решение
Решение
Потому что a == NULL
Если 32-битная система, то никак. Если 64-битная, то это зависит не от языка, а от ограничений операционной системы. Скорее всего malloc такие размеры не сможет выделить. Если под линуксом, то можно попробовать mmap. По виндой какой-то свой механизм
1
|
923 / 639 / 198
Регистрация: 08.09.2013
Сообщений: 1,693
|
|
22.09.2015, 13:53 | 11 |
Отчего же, если память + своп больше 8Г, то выделит и заполнит относительно быстро, а за пару месяцев, может быть, даже на экран выведет) :-))). Я о 64-бит Линуксe. Насчет Венды не знаю.
0
|
22.09.2015, 13:53 | |
Помогаю со студенческими работами здесь
11
Целое значение близкое к 7 000 000 000 Игровой ПК до 4 000 грн (12 000 -13 000 рублей) Вывести в алфавитном порядке список товаров, хранящихся больше месяца, стоимость которых превышает 1 000 000 руб. Модифицировать программу так, чтобы она решала задачу с 10 000 000 элементов менее чем за минуту Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |