C语言中,offsetof()的请教

2025-05-19 01:42:46
推荐回答(1个)
回答1:

这里的type应当是一个结构体 f是此结构的一个成员变量
(type*)0 以0为地址,强制转换成type型的指针,
& 是取成员f的地址: (( type *)0) ->f
整个宏表达式就是求结构type中元素f相对于结构体首地址的字节偏移量, 表达式大小在编译一级就可以被计算出来数值了,并不会直实的去取地址做减法