ZAP - Cvičenie č. 7 | Lab 7 (2022/2023)
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
Cvičenie sa venuje praktickej implementácii lineárneho vyhľadávania v číselnom poli a jeho ladeniu pomocou nástroja CGDB. Na konkrétnom kóde funkcie search sa demonštruje chyba pri používaní operátora sizeof na pole odovzdané ako parameter funkcie, keďže sa v skutočnosti odovzdáva iba adresa poľa, nie jeho veľkosť. Chyba sa opravuje pridaním samostatného parametra size, ktorý sa musí explicitne odovzdať pri volaní funkcie. Následne sa program prekladá s prepínačom -g pre podporu ladenia a spúšťa sa v CGDB, kde sa vysvetľuje práca s oknami zdrojového kódu a výstupu, prepínanie medzi režimami, nastavovanie breakpointov, TTY pohľad pre vstup/výstup a sledovanie premenných pomocou print a display. Program pri testovaní vracia nesprávne indexy, čo naznačuje ďalšiu chybu v logike, ktorú sa študenti chystajú odhaliť krokovaním.
- - Implementácia a testovanie funkcie lineárneho vyhľadávania (search) v poli
- - Chyba pri použití sizeof na pole odovzdané ako parameter funkcie – vracia veľkosť adresy, nie poľa
- - Oprava: pridanie explicitného parametra size do funkcie aj pri jej volaní
- - Preklad programu s prepínačom -g pre podporu ladenia (nastavenie v .bashrc/.profile)
- - Práca s nástrojom CGDB: prepínanie okien (Escape/i), rozdelenie pohľadu (Shift+T)
- - Nastavovanie breakpointov medzerníkom a spúšťanie/krokovanie programu (F5, F6, F8)
- - Sledovanie hodnôt premenných pomocou príkazov print a display v gdb režime
Zhrnutie pripravené s pomocou AI z prepisu videa.
nechodím na prednášky