我写了一些文件:main.c,functions.c,functions2.c和header.h。 functions.c和functions2中的一些函数使用我的一些枚举和结构。
我必须在哪里放置我的枚举和结构?如何在functions.c和functions2.c中为它们编写声明?我的功能(来自不同的文件)必须看到它们。
例如,我在header.h中编写了这样的函数声明:
int func(void);
void func2(int);
但我不知道它是如何为枚举和结构写的。
此致
答案 0 :(得分:1)
functions.c:
的示例#include "header.h"
int func(void)
{
...
}
void func2(int)
{
}
header.h的示例:
#ifndef HEADER_H
#define HEADER_H
int func(void);
void func2(int);
enum eMyEnum
{
eZero = 0,
eOne,
eTwo
};
struct sMyStruct
{
int i;
float f;
};
#endif
答案 1 :(得分:1)
声明结构:
typedef struct <optional struct name>
{
int member1;
char* member2;
} <struct type name>;
以上面的格式在结构中放置您想要的任何成员,并使用您想要的任何名称。 然后你使用:
<struct type name> my_struct;
声明结构的实例。
声明枚举:
typedef enum
{
value_name,
another_value_name,
yet_another_value_name
} <enum type name>;
将上述枚举中的任何值放在您想要的任何名称中。 然后你使用:
<enum type name> my_enum;
声明枚举的实例。