1struct S1 {2 int a;3 int b;4};5struct S2 {6 struct S1 s1;7 struct S1 *ps1;8 int arr[2];9};10struct S1 gs1 = {.a = 1, 2};11struct S2 *s = &(struct S2) {12 {.b = 2, .a = 1},13 &gs1,14 {[0] = 1, 1+1}15};1617int18main()19{20 if(s->s1.a != 1)21 return 1;22 if(s->s1.b != 2)23 return 2;24 if(s->ps1->a != 1)25 return 3;26 if(s->ps1->b != 2)27 return 4;28 if(s->arr[0] != 1)29 return 5;30 if(s->arr[1] != 2)31 return 6;32 return 0;33}