#include
#include
#include
typedef struct
{
int num;
char a;
}node;
void main()
{
node* p = (node*)malloc(sizeof(node));
p->num = 1;
p->a = 'a';
printf("offsetof:%lu\n",offsetof(node,num));
printf("addr:%lu\n",p);
printf("containerof:%lu\n",container_of(&(p->a), node, a));
}
编译时expected expression before ‘node’ printf("containerof:%lu\n",container_of(&(p->a), node, a));