Your understanding is correct:
8.3.4 Arrays
In a declarationT DwhereDhas the form
D1 [constant-expression opt ]
and the type of the identifier in the declarationT D1is “derived-declarator-type-listT,” then the type of the
identifier ofDis an array type.Tis called the array element type; this type shall not be a reference type, the
(possibly cv-qualified) type void, a function type or an abstract class type. If the constant-expression
(5.19) is present, it shall be an integral constant expression and its value shall be greater than zero.(INTERNATIONAL
STANDARD ISO/IEC 14882 Second edition 2003-10-15, emphasis added)
solved Arrays cannot be half of a number [closed]