У меня есть файл .c
(библиотека функций) с функцией и определением вроде этого:
typedef long double big;
big foo(int x) { ... }
Я хочу создать интерфейс этой библиотеки, .h
. Итак, я делаю:
typedef long double big;
big foo(int);
и удаляю typedef long double big;
из файла .c
. Но, поступая так, я отдаю определение типа big
в моем интерфейсе, так что это не совсем чистый интерфейс. Есть идеи, как это исправить?
Я знаю, что могу сделать это в моем файле .c
:
struct foo {
long double;
};
, а затем в файле .h
сделать:
typedef struct foo big;
big foo(int);
Но создание struct
только для одного поля кажется бесполезным, плюс я должен использовать . Оператор
всякий раз, когда я хочу прочитать большой
.