Můžu vkládat všechny soubory, nejen hlavičkové, preprocesor tam vloží všechno (#include "tvuj.c"), vyleze z toho jeden OBJ soubor (zpracuje kompiler), při překladu kompiluje oba dva soubory. Tento postup je nevhodný ve velkých týmech, kdy se při malé změně, kompiluje vše znovu.
Více samostatných souborů 'muj.c' a 'tvuj.c' musím dát do projektu (záleží na vývojovém prostředí).
Musím vložit hlavičkový soubor #include"tvuj.h", musím tam mít podmíněný překlad a deklarace funkcí, konstant, makrer, datových typů, globálních proměnných.
V tomto kroku se dva OBJ soubory se spojují do jednoho EXE: muj.obj, tvuj.obj.
Výhoda: při malé změně kódu se přeloží jenom jeden změněný soubor.
Tento princip je ve vývojových prostředích podporován vytvářením projektů do projektu vkládám jen soubory s příponou *.c, nebo OBJ,
H tam dává preprocesor sám!!!
Pokud částečně bojujeme v týmu, nedám kolegovi *.c, ale poskytnu mu OBJ a H. Zpracování těchto souborů má nastarosti linker.
Když je include to v uvozovkách, tak se hledá soubor v aktuální složce. Při použití < > se soubory hledají tam, kde běžné includy.
V projektech se využívá podmíněný překlad a oddělený překlad. Ve složitějších projektech je vhodné překládat hlavičkové soubory podmíněně. Hlavičkový soubor se může používat ve více souborech, a tím pádem by se vložil několikrát.
#ifndef _muj_h #define _muj_h int Maximum(int a, int b, int c); int Minimum(int a, int b, int c); #endif
Nejprve si vytvoříme adresář, do kterého následně uložíme všechny soubory projektu (programu).
V tomto adresáři vytvoříme další podadresáře pro přehlednost v projektu a to tyto:
Soubory s *.c uložíme do podadresáře src. Soubory projektu uložíme v adresáři projektu (tam kde vidíme podadresáře).
Velmi vhodné je přejmenovat soubor Unit1.c na main.c, abychom věděli, kde se nachází funkce main() a také pro přehlednost.
Přes menu Projekt – Options (Shift+Ctrl+F11) zobrazíme okno se záložkami pro nastavení specifických vlastností tohoto projektu.
Na kartě „Path and Defines“ připojíme náš podadresář include: Tlačítkem Edit vyvoláme okno Path, tlačítkem "..." nalezneme náš podadresář a tlačítkem Add jej připojíme k projektu.
Dále zatrhneme položku „Specify object search path“ a stejným způsobem jako v předchozím případě připojíme náš podadresář obj.
Na kartě „Output settings“ zatrhneme „Final output directory“ a připojíme náš podadresář bin.
Klik pravou myší na název modulu a zvolit „Rename“. Jméno modulu se změní jak u zdrojového (*.c) tak také u hlavičkového (*.h) souboru.
Do souborů doplníme příslušný obsah dle typu souboru a uložíme do podadresáře „src“ našeho adresáře projektu. Zde budou uloženy oba soubory modulu *.c i *.h .