编辑代码

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

typedef struct {
    int id;
    char name[50];
    float score;
} Student;

char* memberNames[] = {
    "id",
    "name",
    "score",
    NULL // 使用 NULL 作为数组的结束标记
};

typedef enum
{
   id,
   name,
   score,
}ENUM_DATA_INDEX;

int main () {
    
    // 打印结构体成员的名称
    for (int i = 0; memberNames[i] != NULL; i++) 
    {
        printf("Member name: %s\n", memberNames[i]);
    }

    for(char i = 0; memberNames[i] != NULL; i++)
    {
     printf("Offset of 'x' is: %zu\n", offsetof(Student,id);
    }
    
    return 0;
}