Для генерации кода максимальное количество элементов массива ограничивается генератором кода и целевым компьютером.
Для массивов фиксированного размера и массивов переменного размера, которые используют выделение статического ЗУ, максимальное количество элементов является меньшим из:
intmax('int32')
.
Самое большое целое число, которое помещается в int
C тип данных на целевом компьютере.
Для массивов переменного размера, которые используют динамическое выделение памяти, максимальное количество элементов является меньшим из:
intmax('int32')
.
Самая большая степень 2, который помещается в int
C тип данных на целевом компьютере.
Эти ограничения применяются даже на 64-битную платформу.
Для массива фиксированного размера, если число элементов превышает максимум, генератор кода сообщает об ошибке во время компиляции. Для массива переменного размера, во время выполнения, если число элементов превышает максимум и проверки ошибки времени выполнения, включены, сгенерированный код сообщает об ошибке.