int printf(const char *, ...); struct A { int w, x, y, z; }; void print(struct A a) { printf("{ %d, %d, %d, %d }\n", a.w, a.x, a.y, a.z); } int main() { struct A a0 = { .x=4, .z=1, .x=8 }; struct A a1 = { 1, .y=7, 6 }; struct A a2[3] = { [2]=a0, [0]=a1, { .z=3 } }; print(a0); print(a1); printf("{\n"); for (int i = 0; i < 3; i++) { printf(" "); print(a2[i]); } printf("}\n"); }