offsetof (type,member)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
/* offsetof example */
#include <stdio.h> /* printf */
#include <stddef.h> /* offsetof */
struct foo {
char a;
char b[10];
char c;
};
int main ()
{
printf ("offsetof(struct foo,a) is %d\n",(int)offsetof(struct foo,a));
printf ("offsetof(struct foo,b) is %d\n",(int)offsetof(struct foo,b));
printf ("offsetof(struct foo,c) is %d\n",(int)offsetof(struct foo,c));
return 0;
}
offsetof(struct foo,a) is 0 offsetof(struct foo,b) is 1 offsetof(struct foo,c) is 11
noexcept(offsetof(type,member)) is always true.