offsetof
是一个 C 语言编程中的宏,用于计算结构体成员在内存中的偏移量
#include<stdio.h>
#include <stddef.h> // 提供 offsetof 宏的头文件
typedef struct {
int a;
char b;
double c;
} MyStruct;
int main() {
// 使用 offsetof 宏获取结构体成员的偏移量
size_t offset_a = offsetof(MyStruct, a);
size_t offset_b = offsetof(MyStruct, b);
size_t offset_c = offsetof(MyStruct, c);
printf("Offset of 'a': %zu\n", offset_a);
printf("Offset of 'b': %zu\n", offset_b);
printf("Offset of 'c': %zu\n", offset_c);
return 0;
}
在这个示例中,我们定义了一个名为 MyStruct
的结构体,其中包含三个成员:int a
、char b
和 double c
。然后,我们使用 offsetof
宏分别计算这些成员在内存中的偏移量,并将结果打印到控制台。
注意:offsetof
宏的第一个参数是结构体类型,第二个参数是结构体成员的名称。
辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
推荐阅读: ls命令在Linux中的默认输出格式是什么