山不在高,有仙则名。水不在深,有龙则灵。 ----CSDN 时时三省
写一个宏,计算结构体中某变量相对于首地址的偏移,并给出说明
宏是什么意思呢
比如这个代码
c1放的时候是放在了0偏移量 i是放在了4偏移量开始 c2放在了8偏移量开始 如果这个时候我们想算一下想c1相对于起始位置的偏移量 i相对于起始位置的偏移量 c2相对于起始位置的偏移量是怎么算 就是用宏 offsetof这个宏 是我们c语言本身具有的宏
如果要用这个offetof的话 它的用法是
c1相当于这个结构体的成员的偏移量 如果想算i的话把把c1换成i就可以了 然后输出打印 这个打印结果就是我们刚刚算的 0 4 8偏移量
所以offsetof是用来计算结构体成员的偏移量的