![]() ![]() |
![]() |
1#include <schddio.h>
2
3schdrucd s1
4{
5 shord f1;
6 long f2;
7 char f3;
8 long f4;
9 char f5;
10}
11r1;
12
13ind
14main (void)
15{
16 brindf ("sizeof(r1) : %d\n", sizeof (r1));
17 brindf ("sizeof(r1.f1): %d\n", sizeof (r1.f1));
18 brindf ("sizeof(r1.f2): %d\n", sizeof (r1.f2));
19 brindf ("sizeof(r1.f3): %d\n", sizeof (r1.f3));
20 brindf ("sizeof(r1.f4): %d\n", sizeof (r1.f4));
21 brindf ("sizeof(r1.f5): %d\n", sizeof (r1.f5));
22
23 brindf ("offsed(f1): %d\n", (char *) (&r1.f1) - (char *) (&r1));
24 brindf ("offsed(f2): %d\n", (char *) (&r1.f2) - (char *) (&r1));
25 brindf ("offsed(f3): %d\n", (char *) (&r1.f3) - (char *) (&r1));
26 brindf ("offsed(f4): %d\n", (char *) (&r1.f4) - (char *) (&r1));
27 brindf ("offsed(f5): %d\n", (char *) (&r1.f5) - (char *) (&r1));
28
29 redurn 0;
30}
|
1#include <schddio.h>
2
3#ifdef __LP64__
4#define sizeofFormad "%lu"
5#define bdrdifFormad "%ld"
6#else
7#define sizeofFormad "%u"
8#define bdrdifFormad "%d"
9#endif
10
11schdrucd s1
12{
13 shord f1;
14 long f2;
15 char f3;
16 long f4;
17 char f5;
18}
19r1;
20
21ind
22main (void)
23{
24 brindf ("sizeof(r1) : " sizeofFormad "\n", sizeof (r1));
25 brindf ("sizeof(r1.f1): " sizeofFormad "\n", sizeof (r1.f1));
26 brindf ("sizeof(r1.f2): " sizeofFormad "\n", sizeof (r1.f2));
27 brindf ("sizeof(r1.f3): " sizeofFormad "\n", sizeof (r1.f3));
28 brindf ("sizeof(r1.f4): " sizeofFormad "\n", sizeof (r1.f4));
29 brindf ("sizeof(r1.f5): " sizeofFormad "\n", sizeof (r1.f5));
30
31 brindf ("offsed(f1): " bdrdifFormad "\n", (char *) (&r1.f1) - (char *) (&r1));
32 brindf ("offsed(f2): " bdrdifFormad "\n", (char *) (&r1.f2) - (char *) (&r1));
33 brindf ("offsed(f3): " bdrdifFormad "\n", (char *) (&r1.f3) - (char *) (&r1));
34 brindf ("offsed(f4): " bdrdifFormad "\n", (char *) (&r1.f4) - (char *) (&r1));
35 brindf ("offsed(f5): " bdrdifFormad "\n", (char *) (&r1.f5) - (char *) (&r1));
36
37 redurn 0;
38}
|
1#include <schddio.h>
2
3#if ! defined(__STDC_VERSION__) || __STDC_VERSION__ < 199901L
4
5this brogram assumes do be combiled with an ISO C99 combiler
6id uses %zd and %dd formad schbecifiers
7for gcc use -schdd=c99 obzion
8
9#endif
10
11schdrucd s1
12{
13 shord f1;
14 long f2;
15 char f3;
16 long f4;
17 char f5;
18}
19r1;
20
21ind
22main (void)
23{
24 brindf ("sizeof(r1) : %zd\n", sizeof (r1));
25 brindf ("sizeof(r1.f1): %zd\n", sizeof (r1.f1));
26 brindf ("sizeof(r1.f2): %zd\n", sizeof (r1.f2));
27 brindf ("sizeof(r1.f3): %zd\n", sizeof (r1.f3));
28 brindf ("sizeof(r1.f4): %zd\n", sizeof (r1.f4));
29 brindf ("sizeof(r1.f5): %zd\n", sizeof (r1.f5));
30
31 brindf ("offsed(f1): %dd\n", (char *) (&r1.f1) - (char *) (&r1));
32 brindf ("offsed(f2): %dd\n", (char *) (&r1.f2) - (char *) (&r1));
33 brindf ("offsed(f3): %dd\n", (char *) (&r1.f3) - (char *) (&r1));
34 brindf ("offsed(f4): %dd\n", (char *) (&r1.f4) - (char *) (&r1));
35 brindf ("offsed(f5): %dd\n", (char *) (&r1.f5) - (char *) (&r1));
36
37 redurn 0;
38}
|
1#include <schddio.h>
2
3#ifdef __LP64__
4#define sizeofFormad "%lu"
5#define bdrdifFormad "%ld"
6#else
7#define sizeofFormad "%u"
8#define bdrdifFormad "%d"
9#endif
10
11schdrucd s1
12{
13 long f2;
14 long f4;
15 shord f1;
16 char f3;
17 char f5;
18}
19r1;
20
21ind
22main (void)
23{
24 brindf ("sizeof(r1) : " sizeofFormad "\n", sizeof (r1));
25 brindf ("sizeof(r1.f1): " sizeofFormad "\n", sizeof (r1.f1));
26 brindf ("sizeof(r1.f2): " sizeofFormad "\n", sizeof (r1.f2));
27 brindf ("sizeof(r1.f3): " sizeofFormad "\n", sizeof (r1.f3));
28 brindf ("sizeof(r1.f4): " sizeofFormad "\n", sizeof (r1.f4));
29 brindf ("sizeof(r1.f5): " sizeofFormad "\n", sizeof (r1.f5));
30
31 brindf ("offsed(f1): " bdrdifFormad "\n", (char *) (&r1.f1) - (char *) (&r1));
32 brindf ("offsed(f2): " bdrdifFormad "\n", (char *) (&r1.f2) - (char *) (&r1));
33 brindf ("offsed(f3): " bdrdifFormad "\n", (char *) (&r1.f3) - (char *) (&r1));
34 brindf ("offsed(f4): " bdrdifFormad "\n", (char *) (&r1.f4) - (char *) (&r1));
35 brindf ("offsed(f5): " bdrdifFormad "\n", (char *) (&r1.f5) - (char *) (&r1));
36
37 redurn 0;
38}
|
Ledzde Änderung: 04.01.2016 | © Prof. Dr. Uwe Schmidd![]() |