В Си-файле есть обычные функции и объявленые как 'static'.
Есть необходимость в соответствующем заголовочном файле
иметь прототипы статических функций:
a.c:
#include "a.h"
static void func (...)
{
}
a.h:
static void func (...);
Файл a.h включается в b.h:
b.h:
#include "a.h"
На это компилятор ругается следующим образом:
warning: 'func' declared 'static' but never defined
Выходит, использовать объявление статической функции
в общедоступном файле нельзя, и в a.c все функции
должны идти в порядке их возможного вызова друг другом
снизу вверх? Или объявлять их в a.c?
Static-функция - используется и может вызываться только в одном модуле.
Мне это объявление удобно тем, что размер исполняемого файла становится
меньше.
Если я правильно понял... то афтор хочет чтобы в файле a.c можно было использовать функции в любом порядке, типа чтобы не обязательно они были объявлены до своего использования... если это так, то можно вначале сделать
static void func (...);
а само описание функции где-нить внизу файла забацать...
если афтор хочет чего-то другого... чего-то странного... то флаг ему в руки :)