У меня есть Preprocessor.h
#define MAX_FILES 15
struct Preprocessor {
FILE fileVector[MAX_FILES];
int currentFile;
};
typedef struct Preprocessor Prepro;
void Prepro_init(Prepro* p) {
(*p).currentFile = 0;
}
Тогда я понял, что мне приходится отделять объявления от определений. Поэтому я создал Preprocessor.c:
#define MAX_FILES 15
struct Preprocessor {
FILE fileVector[MAX_FILES];
int currentFile;
};
typedef struct Preprocessor Prepro;
И Preprocessor.h теперь:
void Prepro_init(Prepro* p) {
(*p).currentFile = 0;
}
Это, очевидно, не работает, потому что Pr..h не знает тип Prepro. Я уже пробовал несколько комбинаций, никто из них не работал. Я не могу найти решение.