Include Files

Module include files

Every module in the project should have a C #incldue file defining its interface, and a .c source file (of the same name apart from the suffix) containing the implementation.

The .c file should #include its own .h file.

A .h file should be protected so that no errors occur if it is #included twice.

An interface which relies on other interfaces should #include those interface files. An implemention file which uses other modules should #include the .h file if it not already #included by its own .h file.

Common include files

These are all in the WWW/Implementation directory.
Definitions of macros like PUBLIC and PRIVATE and YES and NO. For use in all .c files.
All machine-dependent code for accesing TCP/IP channels and files. Also defines some machine-dependent bits like SHORT_NAMES.
Project-wide definition of constants, etc.
(See also: Style in general , directory structure )
Tim BL