Makro (software): Porovnání verzí

Smazaný obsah Přidaný obsah
Bez shrnutí editace
Bez shrnutí editace
Řádek 9:
Makra jsou texty, které se dají představit jako [[Zdrojový kód|zdrojové kódy]]. Ovšem jako se [[Zdrojový kód|zdrojovými kódy]] se s nimi pracuje až po zpracování [[Preprocesor|preprocesoru]]. Například v [[Linux|Linuxu]] lze spustit [[preprocesor]] příkazem cpp (C Pre Processor). Funguje to tak, že se při každém výskytu identifikátoru makra ve zdrojovém kódu nahradí textem makra.
 
[[Preprocesor]] si zavolá [[překladač]] sám, takže o tom ani nemusíte vědět. [[Preprocesor]] odstraní ze zdrojového kódu komentáře a nahradí makra, které jsou ve zdrojovém kódu. Například když zapíšete do [[Zdrojový kód|zdrojového kódu]] <code>#include <stdio.h></code>, pak [[preprocesor]] vloží na místo tohoto řádku obsah standardní [[Knihovna (programování)|knihovny]] <code><stdio.h></code>. Všechny direktivy [[Preprocesor|preprocesoru]] začínají znakem #.
 
Direktiva [[Preprocesor|preprocesoru]] musí být vždy první na novém řádku. Před ní mohou být maximálně jen „bílé znaky“ ([[tabulátor]], mezera, …). Direktiva končí s koncem řádku. Pokud chcete pokračovat na novém řádku, pak před „konec řádku“ napište zpětné lomítko.
Řádek 68:
====Makra bez parametrů====
Používají se pro definici konstant, kdy se místo konstanty používá nějaké specifické slovo. Používané pravidlo v tomto případě je psát identifikátor makra bez parametru velkými písmeny.
Kromě standardních maker se dají vytvářet vlastní makra. Jejich užívání je velmi rozšířené, například je lze použít pro definování počtu prvků pole. Takové makro se pak používá v celém zdrojovém kódu a při změně počtu prvků pole stačí změnit jen makro. Makro se definuje za direktivou <code>#define</code> a lze jej zrušit direktivou #undef.
 
<code>#define NAZEV makro</code>