Your understanding is correct:
8.3.4 Arrays
In a declarationT D
whereD
has the form
D1 [constant-expression opt ]
and the type of the identifier in the declarationT D1
is “derived-declarator-type-listT
,” then the type of the
identifier ofD
is an array type.T
is 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]