У меня есть несколько файлов заголовков в библиотеке: header1.h
, header2.h
... У меня также есть общий заголовочный файл для библиотеки: mylib.h
Как сделать функцию видимой через файл заголовка в C
Я хочу пользователь импортирует файл main.h
и получает доступ к только некоторым функциям в других файлах заголовков.
Например, в библиотеке:
// header1.h
void a(void);
void b(void);
-
// mylib.h
// I can't use this:
#include "header1.h"
// because it would make b function visible.
// Link to function a ????????
И в моей основной программе:
// main.c
#include "mylib.h"
int main(void) {
a(); // Visible: no problem
b(); // Not visible: error
return 0;
}
Я надеялся избежать большого количества файлов заголовков, но я думаю, что это единственное решение, которое мы можем найти в C. Спасибо. – Octan
@Octan: Добро пожаловать. См. Мою дополнительную сноску. – alk