我需要在一个头文件中定义所有结构,但我该如何做到这一点,以避免重新定义 typedef 错误!
最佳答案
您的意思是要将程序文件分成一个声明所需结构的头文件和一个包含您的程序的程序文件吗?
创建一个名为“type.h”的文件,并在该文件中
/* type.h */
#ifndef TYPE_H
#define TYPE_H
typedef struct t_Node
{
int m_Info;
}t_Node;
/* ... definition of another struct */
#endif
以及包含您的程序的文件,例如“main.c”
#include <stdio.h>
#include "type.h"
int main(void)
{
/* your program */
}
并且您需要将这两个文件放在一个目录中。或者您需要使用gcc -c main.c -I <directory of type.h>
关于c - 如何检查之前是否已定义结构类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57269152/