Bra*_*enP 3 c struct typedef header header-files
基本上,我已经定义并输入了这个结构:
typedef struct{
void** elements;
int numElements;
int itemSize;
int capacity;
int dynamicElements;
}array;
Run Code Online (Sandbox Code Playgroud)
我已经编写了动态数组操作函数.但是,我有点问题.在各种函数中,我将此结构作为参数传递.为了模块化代码,我需要在头文件中对这些函数进行原型化(为了允许类型数组的参数,我需要在这些头文件中包含"array.h".)
因此,在包含所有头文件之后,"array.h"头文件已被多次包含.正如所预料的那样,struct类型不止一次被typedef,并导致冲突.
我的问题是:如何在我的头文件中定义这个定义,这样如果多次包含它就不会中断?
Oli*_*rth 10
通过使用包含警卫.
#ifndef ARRAY_H_
#define ARRAY_H_
typedef struct {
...
} array;
#endif
Run Code Online (Sandbox Code Playgroud)