Николай Веселуха
Высший разум
(367975)
11 лет назад
Есть UINT_MAX в limits.h в 4294967295 элемента. Вопрос в том, какая разрядность у операционной системы, каков размер переменной и хватит ли оперативной памяти и файла подкачки для этого массива, а также сколько адресного пространства поддерживает процессор?
Krab Bark
Искусственный Интеллект
(191702)
11 лет назад
Максимально - это size_t в <cstring>
Реально может быть меньше - ограничена памятью, которая выделяется программе.
P.S. Капитан, ну да - это тип, который определяется через другой целый тип по typedef, а уже возможности того типа определяют допустимый диапазон.
Источник: http://www.cplusplus.com/reference/cstring/size_t/
Капитан Гугл
Искусственный Интеллект
(146215)
11 лет назад
Для статического, теоретически - std::numeric_limits<int>::max() из limits или INT_MAX из climits. Практически - минус то, что занимает остальная программа и еще некоторые вещи. Но это если хватает оперативной памяти.
Для динамического - где-то так же, но скорее всего система откажется такой массив выдавать.
--
Краб, это как - максимальный размер size_t? size_t, вообще-то, тип...