Hlavičkové soubory v jazyce C: Porovnání verzí
(Založení článku) |
m (Syntax on) |
||
Řádka 5: | Řádka 5: | ||
Standardní hlavičkové soubory jsou v Linuxu obvykle umístěny v adresáři '''/usr/include'''. Abychom nemuseli v programech vypisovat celou cestu a měnit ji v závislosti na umístění v tom kterém systému, dáme překladači na vědomí jejich standardní umístění pomocí uzavření souboru do znaků menší (<) a větší (>). Pokud je uvedena relativní cesta, vztahuje se k tomuto systémovému adresář, např: | Standardní hlavičkové soubory jsou v Linuxu obvykle umístěny v adresáři '''/usr/include'''. Abychom nemuseli v programech vypisovat celou cestu a měnit ji v závislosti na umístění v tom kterém systému, dáme překladači na vědomí jejich standardní umístění pomocí uzavření souboru do znaků menší (<) a větší (>). Pokud je uvedena relativní cesta, vztahuje se k tomuto systémovému adresář, např: | ||
− | + | <source lang="c"> | |
− | + | #include <stdio.h> | |
+ | #include <acl/libacl.h> | ||
+ | </source> | ||
Pokud používáme vlastní hlavičkové soubory, použijeme místo znaku menší a větší uvozovky. V takovém případě jsou hlavičkové soubory standardně hledány v aktuálním adresáři: | Pokud používáme vlastní hlavičkové soubory, použijeme místo znaku menší a větší uvozovky. V takovém případě jsou hlavičkové soubory standardně hledány v aktuálním adresáři: | ||
− | + | <source lang="c"> | |
+ | #include "definice.h" | ||
+ | </source> | ||
=== Příklad === | === Příklad === | ||
Řádka 16: | Řádka 20: | ||
Vytvoříme si vlastní hlavičkový soubor '''definice.h''': | Vytvoříme si vlastní hlavičkový soubor '''definice.h''': | ||
+ | <source lang="c"> | ||
/* | /* | ||
Nas prvni hlavickovy soubor | Nas prvni hlavickovy soubor | ||
Řádka 23: | Řádka 28: | ||
// standardní include | // standardní include | ||
#include <stdio.h> | #include <stdio.h> | ||
+ | </source> | ||
Dále vytvoříme program '''hello.c''': | Dále vytvoříme program '''hello.c''': | ||
− | + | <source lang="c"> | |
− | + | #include "definice.h" | |
− | + | ||
− | + | int main () | |
− | + | { | |
− | + | printf("Ahoj\n"); | |
+ | } | ||
+ | </source> | ||
A nakonec standardním způsobem přeložíme: | A nakonec standardním způsobem přeložíme: |
Verze z 7. 9. 2008, 12:59
Hlavičkové soubory jsou v jazyce C určeny pro všechny definice, které ve výsledném přeloženém programu nezabírají žádné místo. Jedná se obvykle o definice maker, symbolů, vkládání dalších hlavičkových souborů a podobně.
Umístění hlavičkových souborů
Standardní hlavičkové soubory jsou v Linuxu obvykle umístěny v adresáři /usr/include. Abychom nemuseli v programech vypisovat celou cestu a měnit ji v závislosti na umístění v tom kterém systému, dáme překladači na vědomí jejich standardní umístění pomocí uzavření souboru do znaků menší (<) a větší (>). Pokud je uvedena relativní cesta, vztahuje se k tomuto systémovému adresář, např:
#include <stdio.h>
#include <acl/libacl.h>
Pokud používáme vlastní hlavičkové soubory, použijeme místo znaku menší a větší uvozovky. V takovém případě jsou hlavičkové soubory standardně hledány v aktuálním adresáři:
#include "definice.h"
Příklad
Vytvoříme si vlastní hlavičkový soubor definice.h:
/*
Nas prvni hlavickovy soubor
Možná bysme měli používat češtinu
*/
// standardní include
#include <stdio.h>
Dále vytvoříme program hello.c:
#include "definice.h"
int main ()
{
printf("Ahoj\n");
}
A nakonec standardním způsobem přeložíme:
gcc -o hello hello.c
Překladač v takovém případě zařídí načtení hlavičkového souboru definice.h, ze kterého se pak načte standardní hlavičkový soubor stdio.h
Nestandardní umístění hlavičkových souborů
Pokud pracujeme s více hlavičkovými soubory a nechceme neustále uvádět v programech jejich umístění, můžeme při překladu použít parametr, který zajistí při hledání hlavičkových souborů i prohlížení námi zadaného adresáře:
gcc -I/usr/local/include/mujprogram -o hello hello.c