参考:
#define offsetof(type, member) (size_t)&(((type*)0)->member)
#define container_of(ptr, type, member) ({ \\
const typeof( ((type *)0)->member ) *__mptr = (ptr); \\
(type *)( (char *)__mptr - offsetof(type,member) );})
Posted yvhqbat
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux内核中的offsetof与container_of宏相关的知识,希望对你有一定的参考价值。
参考:
#define offsetof(type, member) (size_t)&(((type*)0)->member)
#define container_of(ptr, type, member) ({ \\
const typeof( ((type *)0)->member ) *__mptr = (ptr); \\
(type *)( (char *)__mptr - offsetof(type,member) );})
以上是关于linux内核中的offsetof与container_of宏的主要内容,如果未能解决你的问题,请参考以下文章
剖析linux内核中的宏-----------offsetof