写一个宏,计算结构体中某变量相对于首地址的偏移

题目:写一个宏,计算结构体中某变量相对于首地址的偏移
#include
#define offsetof(a,b) ((char*)(&b)-(char*)(&a))
typedef struct A{
	char a;
	int b;
	double c;
}A;    //定义一个结构体
int main()
{
	A p;  //定义结构体变量
	printf("%d", offsetof(p,p.c));  //结构体起始地址相当于c变量的偏移量为8
	system("pause"); 
	return 0;
}

你可能感兴趣的:(写一个宏,计算结构体中某变量相对于首地址的偏移)