创建一个空结构

时间:2016-05-14 17:50:57

标签: c

我有这种类型的结构:

#define SUDOKU_SIZE 9
typedef struct {
   int grid[SUDOKU_SIZE][SUDOKU_SIZE];
} sudoku_t;

但是当我想创建一个时:struct sudoku_t sudo;

我收到此错误:错误:'s'的存储大小未知

由于

1 个答案:

答案 0 :(得分:5)

使用typedef,您可以创建一个新类型;您只需通过名称sudoku_t(而不是struct sudoku_t)引用它。因此,而不是struct sudoku_t s;

sudoku_t s;

如果由于某种原因你实际上想要来创建一个命名结构,请删除typedef:

struct sudoku_t {
   int grid[SUDOKU_SIZE][SUDOKU_SIZE];
};

int main() {
    struct sudoku_t s;
}