# V2504. MISRA. Size of an array is not specified.

Данное диагностическое правило основано на руководстве MISRA (Motor Industry Software Reliability Association) по разработке программного обеспечения.

Явное указание размера массива улучшает читаемость и понимание кода, уменьшая вероятность возникновения ошибок, связанных с выходом за границы массива из-за незнания его размера.

Анализатор выдаст предупреждение, если встретит объявление массива со спецификатором 'extern', при условии, что размер массива не задан явно:

    extern int arr[];

Для исправления следует явно указать размер массива:

    extern int arr[12];

Если размер массива можно вывести из инициализатора, предупреждение выдано не будет:

    int arr1[] = { 1, 2, 3 };

Данная диагностика классифицируется как:

MISRA-C-2012-8.11 MISRA-C-2023-8.11 MISRA-CPP-2008-3.1.3