As an example, consider the following structure:
struct S { int a[4]; int b[4]; } s;
Would it be legal to write s.a[6] and
s.a[6]
No, since accesing an array out of bounds invokes Undefined Behavior, both in C and C++.