struct S1 {
|
|
int a;
|
|
int b;
|
|
};
|
|
struct S2 {
|
|
struct S1 s1;
|
|
struct S1 *ps1;
|
|
int arr[2];
|
|
};
|
|
struct S1 gs1 = { .a = 1, 2 };
|
|
struct S2 *s = &(struct S2) {
|
|
{.b = 2, .a = 1},
|
|
&gs1,
|
|
{[0] = 1, 1+1}
|
|
};
|
|
|
|
int
|
|
main()
|
|
{
|
|
if(s->s1.a != 1)
|
|
return 1;
|
|
if(s->s1.b != 2)
|
|
return 2;
|
|
if(s->ps1->a != 1)
|
|
return 3;
|
|
if(s->ps1->b != 2)
|
|
return 4;
|
|
if(s->arr[0] != 1)
|
|
return 5;
|
|
if(s->arr[1] != 2)
|
|
return 6;
|
|
return 0;
|
|
}
|