在struct数组中分配struct数据?

时间:2015-04-02 06:16:21

标签: c arrays struct

头文件book_info struct

struct book_info {
         char title[50];
         char author[40];
         unsigned int year_published;
     };

typedef book_info;
book_info books[20];

void init_heap() {
    head = 0;
    for(int i = 0; i < 19; i++) {
            books[i].year_published = i+1;
        }
    books[20].year_published = 10000;
}

尝试创建一个book_info结构数组,然后在初始化时将每个结构发布的年份分配给一个数字。不确定到底是什么问题?

2 个答案:

答案 0 :(得分:2)

而不是

typedef book_info;

你需要

typedef struct book_info book_info;

答案 1 :(得分:1)

你可以通过两种方式解决这个问题。

1。typedef struct book_info book_info;

2

struct book_info{
//...
    }books[20];