为什么在C中的头文件中使用typedef结构?

why typedef struct in a header file in C?

本问题已经有最佳答案,请猛点这里访问。

我在C头中看到了这样的代码:

1
2
3
4
5
6
7
8
9
10
//a.h

typedef struct name name;

//a.c

struct name {
   int number;
   int age;
};

在头文件中使用typedef struct的原因是什么?在源文件中实现它的方式是什么?

为什么不在头文件中定义结构呢?你打算怎么做?


typedef关键字用于创建同义词,这样在代码的后面,您可以只使用typedefed关键字,而不使用struct或您替换的任何原始类型。