< p>
< p>
# Include <stdio. h> # include <stdlib. h> int main (int argc, char * argv []) {struct A {int * a; short B; int c; char d; float e; double f ;}; struct A a; printf ("0x % x [0, 1, 2, 3] \ n", &. a); printf ("0x % x [4, 5] \ n", &. b); printf ("0x % x [8, 9, 10, 11] Rule 1 \ n", &. c); printf ("0x % x [12] \ n", &. d); printf ("0x % x [16, 17, 18, 19] Rule 1 \ n", &. e); printf ("0x % x [24, 25, 26,27, 28,29, 30,31] \ n", &. f); printf ("% d \ n", sizeof (struct A); return 0 ;}
< p>
# Include <stdio. h> # include <stdlib. h> int main (int argc, char * argv []) {struct B {char a; int B ;}; struct A {int * a; short B; struct B b1; int c; char d; float e; double f ;}; struct A; printf ("0x % x [0, 1, 2, 3] \ n", &. a); printf ("0x % x [4, 5] \ n", &. b); printf ("0x % x [8] Rule 2 \ n", &. b1.a); printf ("0x % x [12,13, 14,15] \ n", &. b1. B); printf ("0x % x [16, 17, 18, 19] Rule 1 \ n", &. c); printf ("0x % x [20] \ n", &. d); printf ("0x % x [24, 25, 26, 27] Rule 1 \ n", &. e); printf ("0x % x [, 33,] \ n", &. f); printf ("% d \ n", sizeof (struct A); return 0 ;}
< p>
# Include <stdio. h> # include <stdlib. h> int main (int argc, char * argv []) {struct A {short a; double B ;}; struct; printf ("0x % x [0, 1] \ n", &. a); printf ("0x % x [,] Rule 1 \ n", &. b); printf ("% d Rule 3 \ n", sizeof (struct A); return 0 ;}
< p>
< p>
< p>
# Include <stdio. h> # include <stdlib. h ># pragma pack (4) int main (int argc, char * argv []) {struct A {short a; short B; double c ;}; struct; printf ("0x % x [0, 1] \ n", &. a); printf ("0x % x [2, 3] Rule 4 \ n", &. b); printf ("0x % x [,] Rule 4 \ n", &. c); printf ("% d Rule 5 \ n", sizeof (struct A); return 0 ;}
< p>