ZPrPr1 2020 - Prednáška 08
Preber si túto prednášku so svojou AI
Skopíruj pripravený podklad a vlož ho do ChatGPT, Claude alebo inej AI — bude ťa učiť alebo skúšať len z tejto prednášky.
Zhrnutie prednášky
Prednáška nadväzuje na predchádzajúce stretnutie a opakuje základné vlastnosti polí a ukazovateľov v jazyku C – veľkosť polí, ich odovzdávanie do funkcií prostredníctvom adresy a prácu s pamäťovými miestami. Následne sa venuje praktickému príkladu, v ktorom sa lokálne premenné funkcie main odovzdávajú do funkcie súčet pomocou ukazovateľov, keďže cieľová funkcia nemá priamy prístup k lokálnym premenným inej funkcie. Na príklade sa vysvetľuje rozdiel medzi operátorom & (získanie adresy premennej) a operátorom * (prístup k hodnote na danej adrese), vrátane dvojitého významu hviezdičky – pri deklarácii ukazovateľa a pri dereferenčnom prístupe. Prednáška postupne demonštruje, ako sa cez ukazovatele dá zapísať výsledok súčtu priamo do pôvodnej premennej volajúcej funkcie.
- - Opakovanie základov práce s poľami: veľkosť, odovzdávanie adresou, hranice poľa
- - Ukazovateľ je premenná obsahujúca adresu inej premennej, funkcie alebo štruktúry
- - Funkcia nevidí lokálne premenné inej funkcie, preto sa používajú ukazovatele na sprístupnenie a zápis hodnôt
- - Operátor & vracia adresu premennej, operátor * dereferencuje adresu a vracia/zapíše hodnotu
- - Hviezdička má dva významy: pri deklarácii označuje typ ukazovateľ, inde slúži ako dereferenčný operátor
- - Demonštrácia na príklade funkcie súčet, ktorá cez ukazovatele zapíše výsledok priamo do premennej vo funkcii main
- - Zdôraznený rozdiel medzi odovzdávaním hodnoty a odovzdávaním adresy ako parametra funkcie
Zhrnutie pripravené s pomocou AI z prepisu videa.
nechodím na prednášky