#include <stdio.h>
int main()
{
/* Declare two integers, initialize one to 100 */
int i1 = 100;
int i2;
/* note: no tag, and the structure is inside main */
/* structure is not global. It is available only to main */
struct
{
int *p1; /* this member is a pointer */
int *p2; /* and so is this one */
}
pointers;
pointers.p1 = &i1;
pointers.p2 = &i2;
*pointers.p2 = -97;
printf ("%i %i \n", i2, *pointers.p2);
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CgppbnQgbWFpbigpIAp7CgkvKiBEZWNsYXJlIHR3byBpbnRlZ2VycywgaW5pdGlhbGl6ZSBvbmUgdG8gMTAwICovCiAgICBpbnQgaTEgPSAxMDA7CiAgICBpbnQgaTI7CgogICAgLyogbm90ZTogIG5vIHRhZywgYW5kIHRoZSBzdHJ1Y3R1cmUgaXMgaW5zaWRlIG1haW4gKi8KICAgIC8qIHN0cnVjdHVyZSBpcyBub3QgZ2xvYmFsLiAgSXQgaXMgYXZhaWxhYmxlIG9ubHkgdG8gbWFpbiAqLwogICAgc3RydWN0CiAgICB7CiAgICAgICAgaW50ICpwMTsgICAvKiB0aGlzIG1lbWJlciBpcyBhIHBvaW50ZXIgKi8KICAgICAgICBpbnQgKnAyOyAgIC8qIGFuZCBzbyBpcyB0aGlzIG9uZSAqLwoKICAgIH0gCiAgICAKICAgIHBvaW50ZXJzOwoKICAgIHBvaW50ZXJzLnAxID0gJmkxOwogICAgcG9pbnRlcnMucDIgPSAmaTI7CgogICAgKnBvaW50ZXJzLnAyID0gLTk3OwoKICAgIHByaW50ZiAoIiVpICVpIFxuIiwgaTIsICpwb2ludGVycy5wMik7CiAgICAKCXJldHVybiAwOwp9