5. Pointer na void, pretypovanie5.1 Pointer void *Niekedy vznikne situácia, že potrebujeme použiť
pointer, no nemusíme nevyhnutne vedieť na aký typ ukazuje (buď to
naozaj nevieme alebo nám jednoducho na tom momentálne nezáleží).
V jazyku C máme k dispozícii špeciálny pointer tzv. void pointer
Má dva parametre: pointer na "nejaký" úsek pamäte resp. adresu, na ktorej začína (môže to byť pointer na int, char, ...) a počet bajtov, ktoré je potrebné vynulovať. Bez použitia void pointeru by bolo písanie takýchto všeobecných funkcií oveľa zložitejšie. Okrem toho budeme pri programovaní často pracovať s funkciami, ktorých návratová hodnota je pointer na typ void. Takéto funkcie budeme bežne používať pri dynamickej alokácii pamäti (pozri funkciu malloc). S údajovým typom void ste sa už určite stretli. Napr. pri definovaní "céčkovskej procedúry" t.j. funkcie vracajúcej typ void (funkcie bez návratovej hodnoty). Typ void zvykneme používať aj v prípade, že chceme prekladač ujistiť o tom, že funkcia nemá žiadne formálne parametre, napr. void main(void) {...} (nie je to nevyhnutné, ale určite to prispieva k prehľadnosti programu) |