linux

linux中offsetof的用法是什么

小亿
94
2023-12-26 21:53:50
栏目: 智能运维
Linux服务器限时活动,0元免费领! 查看>>

在Linux中,offsetof是一个宏定义,用于获取结构体中成员的偏移量。

具体用法如下:

#include <stddef.h>

#define offsetof(TYPE, MEMBER) ((size_t) &((TYPE *)0)->MEMBER)

参数说明:

使用时,可以通过调用该宏来获取结构体中成员的偏移量,如下所示:

#include <stddef.h>
#include <stdio.h>

struct example {
    int a;
    char b;
    float c;
};

int main() {
    size_t offset = offsetof(struct example, b);
    printf("Offset of member 'b' in struct example: %zu\n", offset);
    return 0;
}

运行结果:

Offset of member 'b' in struct example: 4

注意事项:

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

相关推荐:C语言offsetof的用法是什么

0
看了该问题的人还看了