将变量分配给结构中的属性

Assign variable to attribute in struct

我在打印 c 结构的属性时遇到问题。该结构有一个名为 room_id 的整数属性,我要做的就是打印该属性。

static void process_a_reading(struct reading_t reading) {
        int r_id = reading.room_id;
        printf("Room Id: %d", r_id);
}


struct reading_t {
    int room_id ;
    struct event_t event ;
} ;

reading_t 是制作 typedef 时使用的常规命名法。我修改了示例以显示 typedef,并将函数签名替换为使用 typedef 的类型。另外,我会亲自将结构作为指针传递给函数。

typedef struct reading {
    int room_id ;
    struct event_t event ;
} reading_t;

static void 
process_a_reading(reading_t *reading) {
    int r_id = reading->room_id;
    printf("Room Id: %d", r_id);
}

int 
main(void) {
      reading_t myReading = { 20, NULL };
      process_a_reading(&myReading);
}