Nulový ukazatel

Z Wikipedie, otevřené encyklopedie

Nulový ukazatel nebo nulová reference je označení pro zvláštní hodnotu ukazatele nebo reference značící speciální prázdnou hodnotu, tedy „nic“.

V programech je tato speciální hodnota běžně využívána například jako návratová hodnota značící, že podprogramu se nepodařilo nalézt požadovaný záznam nebo požadovanou instanci. Jiným způsobem využití je naznačení konce dynamické datové struktury, například koncový záznam spojového seznamu má jako ukazatel na další záznam nulový ukazatel a v listech stromu jsou jako hodnoty potomků nulové ukazatele.

Programovací jazyky mají pro nulové ukazatele obvykle definováno zvláštní klíčové slovo. V C i C++ je to NULL, ale například C99 zároveň umožňuje použít celočíselnou 0 a C++11 zavádí zvláštní konstantu nullptr. Pascal používá označení nil a Eifell používá void.

Protože nulový ukazatel ve skutečnosti na nic neukazuje, pokusy o jeho dereferenci končí běhovou chybou. V programech v Céčku se typicky jedná o chybu porušení ochrany paměti, která vede k okamžitému pádu programu.

Nulová reference byla vynalezena C. A. R. Hoarem v roce 1965 při jeho práci na jazyku ALGOL W. On sám zpětně zavedení nulové reference lituje a domnívá se, že její používání způsobilo během let značné škody.

Reference[editovat | editovat zdroj]

V tomto článku byl použit překlad textu z článku Null pointer na anglické Wikipedii.