Я использую std::bitset и пытаюсь создать два массива std::bitset размером 100 000 000 000.C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Я использую std::bitset и пытаюсь создать два массива std::bitset размером 100 000 000 000.

Сообщение Anonymous »

Я использую std::bitset и пытаюсь создать два массива std::bitset размером 100 000 000 000.
В результате программа занимает всего 298 МБ моей оперативной памяти, а должна заполнить ~24 ГБ. У меня 32 ГБ ОЗУ и сейчас свободно 26 ГБ. Когда я собираю свой код для x86, он компилируется и может запускаться, но для x64 он показывает следующее: ошибка C2148: общий размер массива не должен превышать 0x7fffffff байт.
Как это исправить и не уменьшать размер массивов битовых наборов?

Я пытался создать 2 глобальных массива.
Кроме того, я установил в Microsoft Visual Studio -> проект -> свойства name_project -> свойства конфигурации -> компоновщик -> система -> Размер резервного стека до 25 000 000 (я думаю, что должно быть КБ, поэтому думаю, что я установил ~ 25 ГБ).

Код: Выделить всё

... // other libraries
#include 

std::bitset mas;
std::bitset a1;

int main() {.../* work with the arrays */...}
Я хочу запустить код с огромными массивами std::bitset.

UPD: для x86 — ок, а что для x64? мой код проверяет целые массивы и в какой-то момент останавливается.

Подробнее здесь: https://stackoverflow.com/questions/578 ... h-size-100
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»